Operation and control methods, devices, equipment, and computer programs
The rewind function in MOBA games allows players to revert game states, addressing the lack of flexibility and enhancing control diversity, thereby improving the gaming experience.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- TENCENT TECHNOLOGY (SHENZHEN) CO LTD
- Filing Date
- 2024-03-28
- Publication Date
- 2026-04-14
AI Technical Summary
Existing multiplayer online battle arena (MOBA) games lack flexibility and diversity in operation control, limiting player experience.
Implementing a rewind function that allows players to revert game states to a previous point in time, enabling players to correct mistakes and enhance control flexibility through a method involving game state manipulation and display of alternate game screens.
Enhances player control flexibility and improves gaming experience by allowing players to quickly correct errors and diversify gameplay strategies.
Smart Images

Figure 2026511612000001_ABST
Abstract
Description
Technical Field
[0005] , , ,
[0004] , , , , ,
[0006] ,
[0001] This application claims priority based on a Chinese patent application with an application number of 2023106033440 filed with the China National Intellectual Property Administration on May 25, 2023, and an invention title of "Operation Control Method, Device, Equipment, and Computer-Readable Storage Medium", and incorporates all of its contents by reference into the present invention.
[0002] Embodiments of the present invention relate to the field of computer technology, particularly to operation control.
Background Art
[0003] With the development of computer technology, video games have become one of the common entertainments in people's daily lives. Multiplayer Online Battle Arena (MOBA) games are one of them.
[0004] In Multiplayer Online Battle Arena games, the flexibility and diversity of operation control are important factors that attract players. Therefore, there is a demand for providing an operation control method that improves the flexibility and diversity of operation control.In one embodiment, an embodiment of the present invention provides an operation control method performed by a terminal device, comprising the steps of: displaying a first game screen, the first game screen including a virtual object located in a virtual environment; controlling the virtual object to play a game in the virtual environment; displaying a second game screen in response to a trigger operation of a rewind function, the second game screen being a screen obtained by controlling the game progress such that the game state of the virtual object in the virtual environment returns to a history state; and controlling the virtual object to resume the game from the history state.
[0007] In another embodiment of the present invention, an embodiment of the present invention provides an operation control device comprising a display module and a control module, wherein the display module displays a first game screen, the first game screen includes a virtual object located in a virtual environment, the control module controls the virtual object to play a game in the virtual environment, the display module displays a second game screen in response to a trigger operation of a rewind function, the second game screen is a screen obtained by controlling the game progress so that the game state of the virtual object in the virtual environment returns to a history state, and the control module controls the virtual object to resume the game from the history state.
[0008] In another embodiment, an embodiment of the present invention provides a computer device comprising a processor and a memory storing a computer program, wherein the computer program is loaded and executed by the processor so that the computer device implements the operation control method described in any of the above.
[0009] In another embodiment of the present invention, an embodiment of the present invention provides a computer-readable storage medium in which a computer program is stored, the computer program being loaded and executed by a processor so that the computer can implement any of the operation control methods described above.
[0010] In another embodiment of the present invention, an embodiment of the present invention provides a computer program product in which a computer program is stored, wherein the computer program is loaded and executed by a processor so that the computer implements the operation control method described in any of the above.
[0011] The technical means according to the embodiments of the present invention can provide at least the following advantageous effects.
[0012] A technical means according to an embodiment of the present invention displays a second game screen when a rewind function is triggered, and controls the virtual object to resume the game from the history state, where the game state of the virtual object located in the virtual environment included in the second game screen is a history state. According to this method, if the object state on the player's first game screen has not reached an expected state, for example, if it is accidentally hit, or if an unauthorized operation is triggered on the first game screen, the player can use the rewind function to return the game to a second game screen prior to the first game screen and continue the game with the object state on the second game screen. Such game rewinding allows the player to quickly and easily rewind the progress of the game during gameplay, diversifying the methods of player control over the game, improving the flexibility of player control over the game, and enhancing the player's game experience. [Brief explanation of the drawing]
[0013] [Figure 1] This is a schematic diagram of the implementation environment for an example of the operation control method according to an embodiment of the present invention. [Figure 2] This is a flowchart of an example of an operation control method according to an embodiment of the present invention. [Figure 3] This is a schematic diagram of an example of the display of the start page according to an embodiment of the present invention. [Figure 4] This is a schematic diagram of an example of the display of a first game screen according to an embodiment of the present invention. [Figure 5] This is a schematic diagram of another example of the display of the first game screen according to an embodiment of the present invention. [Figure 6] This is a schematic diagram of another example of the display of the first game screen according to an embodiment of the present invention. [Figure 7] This is a schematic diagram of another example of the display of the first game screen according to an embodiment of the present invention. [Figure 8] This is a schematic diagram of an example of a procedure for acquiring the object state of a virtual object included in a second game screen according to an embodiment of the present invention. [Figure 9] This is a schematic diagram of another example of the procedure for obtaining the object state of a virtual object included in a second game screen according to an embodiment of the present invention. [Figure 10] This is a schematic diagram of another example of the procedure for obtaining the object state of a virtual object included in a second game screen according to an embodiment of the present invention. [Figure 11] This is a schematic diagram of an example of a second game screen display according to an embodiment of the present invention. [Figure 12] This is a flowchart of an example of an operation control method according to an embodiment of the present invention. [Figure 13] This is a schematic diagram of an example of the configuration of an operation control device according to an embodiment of the present invention. [Figure 14] This is a schematic diagram of an example of the configuration of a terminal device according to an embodiment of the present invention. [Figure 15] This is a schematic diagram of an example of the server configuration according to an embodiment of the present invention. [Modes for carrying out the invention]
[0014] To make the objectives, technical solutions, and advantages of the present invention more clear, the following will further elaborate on the embodiments of the invention in more detail with reference to the accompanying drawings.
[0015] Define abbreviations or important terms related to the embodiments of the present invention.
[0016] Virtual object: It means a movable object in a virtual scene. This movable object may be a virtual person, virtual animal, anime character, etc. The virtual object can operate on a target object via peripheral components or a touch display. Each virtual object has its own shape and volume within the virtual scene that occupies a part of the space in the virtual scene. For example, when the virtual scene is a three-dimensional virtual scene, each virtual object is a three-dimensional solid model created based on animation skeleton technology.
[0017] FIG. 1 is a schematic diagram of an implementation environment of an example of an operation control method according to an embodiment of the present invention. As shown in FIG. 1, the implementation environment includes a terminal device 101 and a server 102.
[0018] Here, an application program capable of providing a game screen is installed and executed on the terminal device 101. The terminal device 101 executes the operation control method according to the embodiments of the present invention.
[0019] The embodiments of the present invention are not limited to the types of application programs that can provide a game screen. For example, an application program that can provide a game screen refers to a game-based application program. For example, it includes third-person shooting (TPS) games, first-person shooting (FPS) games, multiplayer online battle arena (MOBA) games, massive multiplayer online role-playing games (MMORPG), and the like. In an exemplary embodiment, the embodiments of the present invention relate to a game-based application program based on frame synchronization. That is, the operation control method according to the embodiments of the present invention can be applied to a game-based application program based on frame synchronization.
[0020] In addition to game-based application programs, the application programs that can provide a game screen may also be other types of application programs. For example, they include virtual reality (VR) - based application programs, augmented reality (AR) - based application programs, 3D map programs, scene simulation programs, social - based application programs, interactive entertainment - based application programs, and the like.
[0021] Server 102 is configured to provide background services to an application program installed on terminal device 101 that can provide a game screen. In one preferred embodiment, server 102 performs primary calculations and terminal device 101 performs secondary calculations. Alternatively, server 102 performs secondary calculations and terminal device 101 performs primary calculations. Alternatively, server 102 and terminal device 101 perform collaborative computing using a distributed computing architecture.
[0022] Terminal device 101 is any electronic device that can perform human-machine interaction with a user via one or more methods such as a keyboard, touch panel, remote control device, voice interaction, or handwriting device, such as a PC (Personal Computer), mobile phone, smartphone, PDA (Personal Digital Assistant), wearable device, PPC (Pocket PC: handheld computer), tablet computer, smart car, smart TV, smart speaker, etc. Server 102 may be a single server, a server cluster consisting of multiple server units, or a cloud computing service center. Terminal device 101 and server 102 establish a communication connection via a wired network or a wireless network.
[0023] The above-mentioned terminal equipment 101 and server 102 are merely examples, and other existing or potentially future terminal equipment or servers are also applicable to the present invention and should be included within the scope of protection of the present invention, and are herein by reference.
[0024] Embodiments of the present invention provide an operation control method, which may be applied to the implementation environment shown in Figure 1 above. Figure 2 is a flowchart of an example of an operation control method according to an embodiment of the present invention. Using Figure 2 as an example, the method may be performed by the terminal device 101 in Figure 1. As shown in Figure 2, the method includes the following steps 201 to 204.
[0025] Step 201: Display the first game screen. The first game screen contains virtual objects located in the virtual environment.
[0026] In an exemplary embodiment of the present invention, a game application program is installed and executed on a terminal device. The game application program may be an application program that requires downloading, or it may be an embedded program that runs in conjunction with a host program, such as an applet program, and the embodiments of the present invention are not limited thereto. Here, an embedded program is an application program developed based on a programming language and executed in conjunction with a host program. Embedded programs do not need to be downloaded and installed, and can be executed simply by dynamically loading them into the host program. Users can find the embedded program they need by methods such as searching or scanning, apply it with a tap, and terminate it after use, without occupying the memory of the terminal device, making it very convenient. The game application program may be a first-person shooter application program, a third-person shooter application program, a large-scale multiplayer online role-playing application program, or any other type of application program, and the embodiments of the present invention are not limited to the type of game application program.
[0027] The display interface of the terminal device displays information related to the game application program. This information related to the game application program may be the icon of the game application program, the name of the game application program, or other information that can identify the game application program, and the embodiments of the present invention are not limited thereto. When a user wants to start the game application program, they select the information related to the game application program, and the terminal device accepts the selection operation for the game's related information and displays a start page. The start page displays a start widget. Figure 3 is a schematic diagram of an example of the display of a start page according to an embodiment of the present invention. The start page displays a start widget 301.
[0028] When a user selects the start widget, the terminal device accepts the selection operation for the start widget, starts one round of the game, and displays the first game screen. The first game screen includes virtual objects located within a virtual environment. In the following embodiments, one round of the game in the game application program will be described as an example, and the related first game screen, second game screen, third game screen, fourth game screen, etc., all belong to the game screens within the same round of the game.
[0029] The virtual environment is the game scene displayed by the game application program after the terminal device has executed the game application program. Within this virtual environment are virtual objects provided by the game application program, including virtual objects controlled by at least one player (e.g., the user of the terminal device), and may also include other environmental objects within the game scene, such as the ground, background, and non-player objects.
[0030] Figure 4 is a schematic diagram of an example of the display of a first game screen according to an embodiment of the present invention. The first game screen displays a virtual environment and virtual objects located within the virtual environment.
[0031] In one preferred embodiment, the virtual objects displayed on the first game screen may include virtual objects controlled by the user of the terminal device (e.g., a user) or virtual objects controlled by other players. Other players may be on the same team as the user or on a different team, and the embodiments of the present invention are not limited to these.
[0032] The user selecting the start widget may be done by tapping the start widget, by double-tapping the start widget, or by any other method, and the embodiments of the present invention are not limited to these. The information relating to the game application program selected by the user may be the information relating to the game application program tapped by the user, or by any other method, and the embodiments of the present invention are not limited to these.
[0033] Preferably, the start page may display other information. For example, the start page may display a user-controlled virtual object. 302 in Figure 3 is a user-controlled virtual object.
[0034] Step 202: Control the virtual object to play the game in the virtual environment.
[0035] In one preferred embodiment, the first game screen displays other widgets. For example, the first game screen may display virtual widgets for controlling changes in the object state of virtual objects, such as a fire widget, a jump widget, a prone widget, a crouch widget, and a direction widget. Here, the fire widget fires virtual resources using a virtual item. The jump widget instructs a virtual object controlled by an object to jump. The prone widget instructs a virtual object controlled by an object to prone. The crouch widget instructs a virtual object controlled by an object to crouch. The direction widget changes the direction of movement of a virtual object controlled by an object. In Figure 4, widget 401 is a fire widget, widget 402 is a jump widget, widget 403 is a prone widget, widget 404 is a crouch widget, and widget 405 is a direction widget.
[0036] Preferably, at least one widget from among a launch widget, a jump widget, a prone widget, a crouch widget, and a direction widget controls how the virtual object plays the game in the virtual environment. Other widgets may be displayed on the first game screen, and the embodiments of the present invention are not limited thereto.
[0037] Step 203: In response to the trigger operation of the rewind function, a second game screen is displayed. The second game screen is obtained by controlling the game progress so that the game state of the virtual objects in the virtual environment returns to the history state.
[0038] Preferably, the rewind function means a function that rewinds the game state of virtual objects in the virtual environment, for example, returning from the first game screen to the previous second game screen.
[0039] In one preferred embodiment, the difference in the number of in-game frames between the first game screen and the second game screen satisfies the number of frames corresponding to the reference time. The reference time is the time length corresponding to the rewind function. That is, the rewind function may be a high-speed rewind corresponding to a fixed rewind time length, such as 5 seconds or 10 seconds. This allows the game of the round to be returned from the game progress of the current game time to the game progress of 5 or 10 seconds prior.
[0040] The terminal device may determine the number of frames corresponding to the duration based on the execution frame rate of the game application program, and rewind the game round based on that. This duration may be a predetermined fixed duration, may vary depending on different types of game matches, or may change according to user adjustments, but the present invention is not limited thereto.
[0041] The rewind function may be triggered by a voice command or in response to a trigger operation. For example, a rewind widget may be displayed on the first game screen. For example, widget 406 in Figure 4 is a rewind widget. In response to a trigger operation on the rewind widget, it is decided to trigger the rewind function. Alternatively, it is decided to trigger the rewind function in response to a trigger operation on a widget that adjusts the volume of the terminal device to be increased, or in response to a trigger operation on a widget that adjusts the volume of the terminal device to be decreased.
[0042] The first game screen may display a first widget for hiding the rewind widget. Widget 407 in Figure 4 is the first widget. In response to a trigger operation on the first widget, the rewind widget is hidden on the first game screen. The first game screen displays a second widget for displaying the rewind widget. Figure 5 is a schematic diagram of another example of the display of the first game screen according to an embodiment of the present invention. In the first game screen shown in Figure 5, the rewind widget is not displayed, and the second widget 501 is displayed. In response to a trigger operation on the second widget, the second widget is hidden on the first game screen, and the rewind widget is displayed on the first game screen.
[0043] Here, the trigger operation for the first widget may be a tap operation on the first widget or any other operation on the first widget, and the embodiments of the present invention are not limited thereto. The trigger operation for the second widget is the same as the trigger operation for the first widget, and its explanation is omitted here.
[0044] In one preferred embodiment, the step of displaying a second game screen in response to a trigger operation of the rewind function includes the steps of: determining a reference value in response to a trigger operation of the rewind function based on the game's frame rate and reference time length; determining a second value based on the first value and the reference value if the reference value is smaller than a first value, where the first value is the number of frames corresponding to the first game screen in the game and the second value is the number of frames corresponding to the second game screen in the game; obtaining a second game screen based on the second value; and displaying the second game screen. Here, the reference time length is the time length corresponding to the rewind function, and the reference value is the number of frames of the screen that needs to be rewound. The time length corresponding to the rewind function is a time set by the game developer, or a time set by the participant in the game, and embodiments of the present invention are not limited thereto. For example, if the time length corresponding to the rewind function is 10 seconds, the reference time is 10 seconds. The frame rate of a game is the frequency at which a frame-by-frame bitmap image is continuously displayed on the screen. The frame rate of a game may be set by the game developer, or it may be set by the participants in the game, and the embodiments of the present invention are not limited to these. For example, the frame rate of a game is 30 frames / second. That is, 30 frames of the game screen are displayed per second.
[0045] The step of determining a reference value based on the game's frame rate and reference duration includes taking the product of the game's frame rate and reference duration as the reference value. For example, if the game's frame rate is 30 frames / second and the reference duration is 10 seconds, the reference value is 30 * 10 = 300.
[0046] After determining the reference number, it is necessary to determine the relationship between the reference number and the first number. If the reference number is smaller than the first number, it means that rewinding is possible. If the reference number is greater than or equal to the first number, it means that rewinding is not possible.
[0047] This means that the frame rate may differ when the same game is run on different devices, and the frame rate may also differ when different games are run on the same device. Therefore, by determining the number of frames corresponding to the reference time length based on the game's frame rate, the rewind function can be accurately implemented for the current game. Furthermore, by determining whether the rewind function is currently available based on the game's progress (history frames), the accuracy of the rewind function's implementation can be ensured.
[0048] If the reference value is greater than or equal to a first value, a first prompt message indicating that rewinding is not possible is displayed on the first game screen. The content of the first prompt message may be arbitrary, and embodiments of the present invention are not limited thereto. For example, the content of the first prompt message may be, "The game progress time is short, so you cannot rewind at this time." Figure 6 is a schematic diagram of another example of the display of the first game screen according to an embodiment of the present invention. The first game screen shown in Figure 6 displays the first prompt message 601.
[0049] Preferably, if the reference value is smaller than the first value, a second prompt information indicating that the second game screen is being acquired is displayed on the first game screen. The content of the second prompt information may be arbitrary, and embodiments of the present invention are not limited thereto. For example, the content of the second prompt information may be "Rewinding, please wait a moment." Figure 7 is a schematic diagram of another example of the display of the first game screen according to an embodiment of the present invention. The first game screen shown in Figure 7 displays the second prompt information 701. When the second game screen is acquired, the second prompt information is hidden and the second game screen is displayed.
[0050] If the reference number is smaller than the first number, the step of determining the second number based on the first number and the reference number includes determining the difference between the first number and the reference number as the second number, with the first number being the minuend and the reference number being the minuend. For example, if the first number is 452 and the reference number is 300, the second number is 152, meaning the second game screen is the game screen of the 152nd frame of the game.
[0051] In one preferred embodiment, the step of obtaining a second game screen based on a second numerical value includes the steps of obtaining the object state of virtual objects contained in the second game screen based on the second numerical value, and obtaining the second game screen based on the object state of virtual objects contained in the second game screen. Alternatively, a terminal device may send a screen acquisition request to a server. The screen acquisition request carries a second numerical value and is used to acquire a second game screen. The server receives the screen acquisition request, parses the screen acquisition request to obtain a second numerical value, obtains the object state of virtual objects contained in the second game screen based on the second numerical value, and obtains the second game screen based on the object state of virtual objects contained in the second game screen. The server sends the second game screen to the terminal device so that the terminal device can acquire the second game screen.
[0052] When playing a game, the object state of virtual objects differs between different game screens. Therefore, in order to accurately return the game from the current first game screen to the second game screen in the history, the terminal device can obtain the object state of virtual objects in the second game screen, thereby accurately returning the game to the second game screen and ensuring the accuracy of the second game screen.
[0053] Here, when a terminal device obtains the object state of a virtual object included in the second game screen based on a second numerical value, there are three possible implementation methods.
[0054] Implementation Method 1: The terminal device stores a first state set corresponding to each game screen from the first frame of the game to the first game screen, and the correspondence between the first state set corresponding to each frame's game screen and the frame number corresponding to each frame's game screen. The first state set corresponding to each frame's game screen includes the object state of the virtual objects contained in that frame's game screen. From the first state set corresponding to each frame's game screen, the first state set corresponding to the second numerical game screen is determined, and the object state of the virtual objects contained in the determined first state set is set as the object state of the virtual objects contained in the second game screen.
[0055] Preferably, each time the terminal device displays the game screen for a frame, it records the object state of the virtual objects contained in the game screen for that frame, generates a first set of states corresponding to the game screen for that frame from the object states of the virtual objects contained in the game screen for that frame, and stores in the terminal device the correspondence between the first set of states corresponding to the game screen for that frame and the frame number corresponding to the game screen for that frame.
[0056] For example, when the game progresses to the 452nd frame, that is, when the first game screen is the 452nd frame of the game, the terminal device stores a first set of states corresponding to each game screen from the first frame to the 452nd frame of the game, and the correspondence between the first set of states corresponding to each game screen and the frame number corresponding to each game screen. Table 1 is an illustrative table showing the correspondence between the frame number corresponding to each game screen and the first set of states corresponding to each game screen, as stored in the terminal device according to an embodiment of the present invention.
[0057] [Table 1] As can be seen from Table 1 above, the first state set corresponding to the game screen of the first frame of the game is first state set 1, the first state set corresponding to the game screen of the second frame of the game is first state set 2, and the first state sets corresponding to the game screens of the other frames of the game are shown in Table 1 above, and their explanation is omitted here.
[0058] Furthermore, the terminal device stores a first state set corresponding to the game screen of each frame of the game. Table 1 above is merely an example of a first state set corresponding to 452 game screens according to an embodiment of the present invention, and is not limited thereto.
[0059] For example, if the second value is 152, the object state of the virtual object included in the first state set corresponding to the game screen with 152 frames will be set to the object state of the virtual object included in the second game screen. That is, the object state of the virtual object included in the first state set 152 will be set to the object state of the virtual object included in the second game screen.
[0060] Figure 8 is a schematic diagram of an example of a procedure for acquiring the object state of a virtual object included in a second game screen according to an embodiment of the present invention. The first value is 452, the second value is 152, and the terminal device stores a first state set corresponding to each game screen from the first frame of the game to the 452nd frame of the game. The first state set corresponding to each frame of the game screen is shown in Figure 8. The object state of the virtual object included in the first state set corresponding to the game screen of the 152nd frame is set as the object state of the virtual object included in the second game screen.
[0061] This method only requires identifying the frame number of the target game screen (the second game screen) for rewinding and obtaining the first state set corresponding to that frame number, thus saving processing power on the terminal device. However, storing the state set corresponding to each frame of the game screen in the terminal device occupies a large amount of memory space on the terminal device. As the game progresses, the number of game screens displayed increases, and the number of state sets stored in the terminal device also increases, which slows down the smooth execution of the game and affects the player's gaming experience.
[0062] Preferably, after obtaining the object state of the virtual objects contained in the second game screen, the second game screen is then displayed, and the game progresses starting from the second game screen. Therefore, the first state set corresponding to each game screen from the second game screen (the game screen of the second numerical frame) to the first game screen becomes unnecessary. Accordingly, after obtaining the object state of the virtual objects contained in the second game screen, the first state set corresponding to each game screen from the second game screen to the first game screen may be deleted. This saves memory space on the terminal device.
[0063] In one preferred embodiment, a method in which a first state set corresponding to the game screen of each frame of the game is stored in the terminal device requires a large amount of memory in the terminal device. For this reason, each time the terminal device acquires a first state set corresponding to the game screen of one frame of the game, it may send the first state set corresponding to the game screen of that frame and the frame number corresponding to the game screen of that frame to the server, and have the server store the correspondence between the first state set corresponding to the game screen of that frame and the frame number corresponding to the game screen of that frame. This eliminates the need to store a first state set corresponding to the game screen of each frame in the terminal device, thus saving memory space in the terminal device.
[0064] When a first set of states corresponding to each game screen from the first frame to the first game screen is stored in the server, the step of obtaining the object state of virtual objects contained in the second game screen based on a second numerical value includes sending a first acquisition request carrying the second numerical value to the server. When the server receives the first acquisition request, it parses the first acquisition request and obtains the second numerical value. The server sets the object state of virtual objects contained in the first set of states corresponding to the game screens from the first frame to the first game screen stored in the server, where the corresponding frame number is the second numerical value, as the object state of virtual objects contained in the second game screen. The server sends the object state of virtual objects contained in the second game screen to a terminal device, causing the terminal to acquire the object state of virtual objects contained in the second game screen.
[0065] The method for storing the first state set corresponding to each game screen from the first frame to the first game screen on the server is the same as the method for storing it on the terminal device, and therefore, its explanation is omitted here.
[0066] For example, if the second number is 152, 152 is transported to the first acquisition request, the server sets the object state of the virtual objects included in the first state set 152 as the object state of the virtual objects included in the second game screen, and then transmits the object state of the virtual objects included in the first state set 152 to the terminal device.
[0067] In one preferred embodiment, the server may, after sending the object state of the virtual objects contained in the second game screen to the terminal device, delete the first state set corresponding to the game screen for each frame from the second game screen to the first game screen. This can save memory space on the server.
[0068] Since a first set of states corresponding to each frame in the game is stored in advance, when it is necessary to return to the second game screen, based on the number of frames of the second game screen (the second value), among the first sets of states stored in advance, the first set of states corresponding to the second value can be efficiently matched. Since the first set of states can accurately identify the object states of virtual objects on the second game screen of the game, the acquisition efficiency of object states can be improved.
[0069] Implementation method 2: In the terminal device, a second set of states corresponding to the first frame of the game, and instructions corresponding to the game screens of each frame from the game screen of the second frame to the first game screen are stored. The instruction corresponding to the game screen of the i-th frame indicates the instructions necessary to control the state change of the control object from the display of the game screen of the (i - 1)-th frame to the display of the game screen of the i-th frame. The second set of states includes the object states of the virtual objects included in the game screen of the first frame, where 1 < i ≤ the first value. Based on the second value, instructions corresponding to the game screens of each frame from the game screen of the second frame to the second game screen are determined from the instructions corresponding to the game screens of each frame. Based on the second set of states and the instructions corresponding to the game screens of each frame from the game screen of the second frame to the second game screen, the object states of the virtual objects included in the second game screen are acquired.
[0070] Preferably, the step of obtaining the object state of virtual objects contained in the second game screen based on a second state set and instructions corresponding to the game screens of each frame from the second frame's game screen to the second game screen includes the step of obtaining the object state of virtual objects contained in the second frame's game screen based on the object state of virtual objects contained in the first frame's game screen and instructions corresponding to the second frame's game screen, and the step of iteratively obtaining the object state of virtual objects contained in the i-th frame's game screen based on the object state of virtual objects contained in the i-th frame's game screen and instructions corresponding to the i-th frame's game screen, using the second state set until the object state of virtual objects contained in the second game screen is obtained. That is, the object state of virtual objects contained in the second game screen is obtained.
[0071] For example, if the first value is 10 and the second value is 5, the object state of the virtual object contained in the game screen of the 5th frame is obtained. The terminal device stores the object state of the virtual object contained in the game screen of the 1st frame, and the commands corresponding to each game screen from the game screen of the 2nd frame to the game screen of the 10th frame. From the commands corresponding to each game screen from the game screen of the 2nd frame to the game screen of the 10th frame, the commands corresponding to the game screen of the 2nd frame, the commands corresponding to the game screen of the 3rd frame, the commands corresponding to the game screen of the 4th frame, and the commands corresponding to the game screen of the 5th frame are obtained. Therefore, based on the object state of the virtual object contained in the game screen of the 1st frame and the command corresponding to the game screen of the 2nd frame, the object state of the virtual object contained in the game screen of the 2nd frame is obtained. Based on the object state of the virtual object contained in the game screen of the 2nd frame and the command corresponding to the game screen of the 3rd frame, the object state of the virtual object contained in the game screen of the 3rd frame is obtained. Based on the object state of the virtual object contained in the game screen of the third frame and the command corresponding to the game screen of the fourth frame, the object state of the virtual object contained in the game screen of the fourth frame is obtained. Based on the object state of the virtual object contained in the game screen of the fourth frame and the command corresponding to the game screen of the fifth frame, the object state of the virtual object contained in the game screen of the fifth frame is obtained. In other words, the object state of the virtual object contained in the second game screen is obtained.
[0072] Figure 9 is a schematic diagram of another example of the procedure for acquiring the object state of a virtual object included in a second game screen according to an embodiment of the present invention. The first value is 452, the second value is 152, and the terminal device stores a second state set corresponding to the game screen of the first frame of the game, and instructions corresponding to the game screens of each frame from the game screen of the second frame to the game screen of the 452nd frame. The instructions corresponding to the game screen of each frame are shown in Figure 9. Based on the second state set corresponding to the game screen of the first frame and the instructions corresponding to the game screens of each frame from the game screen of the second frame to the game screen of the 152nd frame, the object state of the virtual object included in the second game screen is acquired.
[0073] The advantage of this method is that, during gameplay, only the set of states corresponding to the first frame's game screen and the commands corresponding to each subsequent frame's game screen need to be saved, eliminating the need to save a set of states corresponding to each frame's game screen, thus significantly reducing the amount of data to be saved. However, as the game progresses, the number of displayed game screens increases, and so does the number of commands to be saved. Each time a rewind occurs, the terminal device needs to acquire commands corresponding to all game screens between the target game screen and the first frame's game screen. Based on the command set corresponding to the first frame's game screen and the commands corresponding to all game screens between the target game screen and the first frame's game screen, the terminal device needs to acquire the object states of the virtual objects contained in the target game screen. Consequently, the computational load on the terminal device increases, and the time required to acquire the object states of the virtual objects contained in the second game screen lengthens, resulting in a longer acquisition time for the second game screen and a worse game experience for the player.
[0074] In one preferred embodiment, after obtaining the object state of the virtual objects contained in the second game screen, the second game screen is then displayed, and the game continues from the second game screen. Therefore, instructions corresponding to the game screen for each frame from the second game screen to the first game screen become unnecessary. Accordingly, instructions corresponding to the game screen for each frame from the second game screen to the first game screen may be deleted. This saves memory space on the terminal device.
[0075] In one preferred embodiment, the above method of storing a second state set corresponding to the game screen of the first frame of the game and the instructions corresponding to the game screen of each other frame in the terminal device requires more memory in the terminal device. Therefore, after the terminal device obtains the second state set corresponding to the game screen of the first frame of the game, it may send the second state set corresponding to the game screen of the first frame and the frame number corresponding to the game screen of the first frame to the server, and the server may store the second state set corresponding to the game screen of the first frame and the correspondence between the frame number corresponding to the game screen of the first frame and the second state set corresponding to the game screen of the first frame. After the terminal device obtains the instructions corresponding to the game screen of each other frame, it may send the instructions corresponding to the game screen of each frame and the frame number corresponding to the game screen of each frame to the server, and the server may store the instructions corresponding to the game screen of each frame and the correspondence between the frame number corresponding to the game screen of each frame and the instructions corresponding to the game screen of each frame. This eliminates the need to store a second state set corresponding to the game screen of the first frame, as well as the commands corresponding to the game screen of each frame, in the terminal device, thus saving memory space on the terminal device.
[0076] If the server stores a second state set corresponding to the game screen of the first frame, and instructions corresponding to each frame from the game screen of the second frame to the first game screen, the step of obtaining the object state of virtual objects contained in the second game screen based on a second numerical value includes sending a second acquisition request carrying the second numerical value to the server. When the server receives the second acquisition request, it parses the second acquisition request and obtains the second numerical value. The server retrieves the second state set corresponding to the game screen of the first frame, and instructions corresponding to each frame from the game screen of the second frame to the second game screen, from the server's memory space, and obtains the object state of virtual objects contained in the second game screen based on the second state set and instructions corresponding to each frame from the game screen of the second frame to the second game screen. The server sends the object state of virtual objects contained in the second game screen to a terminal device, causing the terminal device to obtain the object state of virtual objects contained in the second game screen.
[0077] Preferably, the server retrieves a second state set corresponding to the game screen of the first frame and instructions corresponding to the game screens of each frame from the game screen of the second frame to the second game screen from the server's memory space, and then transmits the second state set corresponding to the game screen of the first frame and instructions corresponding to the game screens of each frame from the game screen of the second frame to the second game screen to the terminal device. The terminal device receives the second state set corresponding to the game screen of the first frame and instructions corresponding to the game screens of each frame from the game screen of the second frame to the second game screen, and retrieves the object state of the virtual objects contained in the second game screen based on the second state set corresponding to the game screen of the first frame and instructions corresponding to the game screens of each frame from the game screen of the second frame to the second game screen.
[0078] The method for storing the commands corresponding to each game screen from the second frame to the first game screen on the server is the same as the method for storing them on the terminal device, and therefore, we will omit the explanation here.
[0079] For example, if the second value is 5, 5 is transported to the second acquisition request, and the server acquires the second state set corresponding to the game screen of the first frame, the instruction corresponding to the game screen of the second frame, the instruction corresponding to the game screen of the third frame, the instruction corresponding to the game screen of the fourth frame, and the instruction corresponding to the game screen of the fifth frame. Based on the object state of the virtual objects included in the second state set and the instruction corresponding to the game screen of the second frame, the object state of the virtual objects included in the game screen of the second frame is acquired. Based on the object state of the virtual objects included in the game screen of the second frame and the instruction corresponding to the game screen of the third frame, the object state of the virtual objects included in the game screen of the third frame is acquired. Based on the object state of the virtual objects included in the game screen of the third frame and the game screen of the fourth frame, the object state of the virtual objects included in the game screen of the fourth frame is acquired. Based on the object state of the virtual objects included in the game screen of the fourth frame and the instruction corresponding to the game screen of the fifth frame, the object state of the virtual objects included in the game screen of the fifth frame is acquired. Then, the object state of the virtual objects included in the game screen of the fifth frame is sent to the terminal device.
[0080] In one preferred embodiment, after the server has sent the object state of the virtual objects contained in the second game screen to the terminal device, or after the server has sent the second state set corresponding to the frame of the first game screen and the instructions corresponding to each frame from the second game screen to the first game screen to the terminal device, the instructions corresponding to each frame from the second game screen to the first game screen may be deleted. This saves memory space on the server.
[0081] Implementation Method 3: The terminal device stores a third set of states corresponding to multiple reference game screens, and the correspondence between the third set of states corresponding to each frame's reference game screen and the number of frames corresponding to each frame's reference game screen. A reference game screen is a game screen whose number of frames satisfies the frame count requirement. The third set of states corresponding to each frame's reference game screen includes the object state of the virtual objects contained in that frame's reference game screen. If the second numerical value satisfies the frame count requirement, the object state of the virtual objects contained in the second game screen is determined based on the third set of states corresponding to the second game screen.
[0082] Here, the number of frames that satisfies the frame count requirement is the number of frames for each reference. For example, if the reference count is 10, the frames that satisfy the frame count requirement are the 1st frame, the 11th frame, the 21st frame, and so on.
[0083] For example, the first numerical value is 71, and the second numerical value is 61. The terminal device stores the following third state sets: the third state set corresponding to the game screen of the first frame, the third state set corresponding to the game screen of the eleventh frame, the third state set corresponding to the game screen of the twenty-first frame, the third state set corresponding to the game screen of the thirty-first frame, the third state set corresponding to the game screen of the forty-first frame, the third state set corresponding to the game screen of the fifty-first frame, the third state set corresponding to the game screen of the sixty-first frame, and the third state set corresponding to the game screen of the seventy-first frame. Therefore, the object state of the virtual object included in the third state set corresponding to the game screen of the sixty-first frame is set to the object state of the virtual object included in the second game screen.
[0084] Preferably, the terminal device obtains the object state of the virtual objects contained in the second game screen, then displays the second game screen, and continues the game starting from the second game screen. Therefore, a third state set corresponding to a reference game screen whose corresponding frame count is equal to or greater than the second value becomes unnecessary. Accordingly, the third state set corresponding to a reference game screen whose corresponding frame count is equal to or greater than the second value may be deleted. This saves memory space on the terminal device.
[0085] In one preferred embodiment, the above method of storing a third state set corresponding to a reference game screen in the terminal device requires more memory in the terminal device. Therefore, after the terminal device obtains the third state set corresponding to the reference game screen, it sends the third state set corresponding to the reference game screen and the number of frames corresponding to the reference game screen to the server, and the server stores the third state set corresponding to the reference game screen, and the correspondence between the number of frames corresponding to the reference game screen and the third state set corresponding to the reference game screen. This eliminates the need to store the third state set corresponding to the reference game screen in the terminal device, thus saving memory space in the terminal device.
[0086] When a third state set corresponding to a reference game screen is stored in the server, the step of obtaining the object state of virtual objects contained in the second game screen based on a second numerical value includes sending a third acquisition request carrying the second numerical value to the server. After receiving the third acquisition request, the server parses the third acquisition request and obtains the second numerical value. The server obtains from its memory space the third state set corresponding to the reference game screen whose corresponding frame number is the second numerical value, and sets the object state of virtual objects contained in the third state set corresponding to the reference game screen whose corresponding frame number is the second numerical value as the object state of virtual objects contained in the second game screen. The server sends the object state of virtual objects contained in the second game screen to a terminal device, and the terminal device obtains the object state of virtual objects contained in the second game screen.
[0087] In one preferred embodiment, after the server has sent the object state of the virtual objects contained in the second game screen to the terminal device, the server may delete a third state set corresponding to a reference game screen whose corresponding frame number is greater than or equal to the second value. This can save memory space on the server.
[0088] Preferably, the terminal device stores a third state set corresponding to multiple reference game screens, a correspondence between the third state set corresponding to each frame's reference game screen and the frame number corresponding to each frame's reference game screen, and instructions corresponding to the game screen of each frame between two adjacent frames' reference game screens. The instructions corresponding to the game screen of each frame between two adjacent frames' reference game screens indicate the necessary instructions from the display of the game screen of the frame immediately preceding the frame to the display of the game screen of the current frame. The third state set corresponding to each frame's reference game screen includes the object state of the virtual objects contained in the reference game screen of that frame.
[0089] If the second value does not meet the frame count requirement, a third state set corresponding to the third game screen is determined from a third state set corresponding to multiple reference game screens based on the second value. The third game screen is the reference game screen with the largest number of frames among the reference game screens whose corresponding number of frames is less than the second value. From the commands corresponding to the game screen of each frame, the commands corresponding to the game screen of each frame from the game screen of the frame immediately following the third game screen to the second game screen are determined. Based on the third state set corresponding to the third game screen, and the commands corresponding to the game screen of each frame from the game screen of the frame immediately following the third game screen to the second game screen, the object state of the virtual objects contained in the second game screen is obtained.
[0090] For example, the step of obtaining the object state of virtual objects contained in the second game screen based on a third state set corresponding to the third game screen, instructions corresponding to each game screen between the third game screen and the second game screen, and instructions corresponding to the second game screen includes the step of obtaining the object state of virtual objects contained in the fourth game screen, which is the game screen immediately preceding the second game screen, based on the object state of virtual objects contained in the third game screen and instructions corresponding to each game screen between the third game screen and the second game screen, and the step of obtaining the object state of virtual objects contained in the second game screen based on the object state of virtual objects contained in the fourth game screen and instructions corresponding to the second game screen. The second game screen is the second game screen, i.e., the object state of virtual objects contained in the second game screen is obtained.
[0091] For example, the first number is 71, the second number is 55, and the terminal device has a third state set corresponding to the game screen of the first frame, a third state set corresponding to the game screen of the eleventh frame, a third state set corresponding to the game screen of the 21st frame, a third state set corresponding to the game screen of the 31st frame, a third state set corresponding to the game screen of the 41st frame, a third state set corresponding to the game screen of the 51st frame, a third state set corresponding to the game screen of the 61st frame, a third state set corresponding to the game screen of the 71st frame, instructions corresponding to the game screen of each frame between the game screen of the first frame and the game screen of the eleventh frame, the eleventh The terminal device obtains the command corresponding to the game screen of each frame between the game screen of the current frame and the game screen of the 21st frame, the command corresponding to the game screen of each frame between the game screen of the 21st frame and the game screen of the 31st frame, the command corresponding to the game screen of each frame between the game screen of the 31st frame and the game screen of the 41st frame, the command corresponding to the game screen of each frame between the game screen of the 41st frame and the game screen of the 51st frame, the command corresponding to the game screen of each frame between the game screen of the 51st frame and the game screen of the 61st frame and the command corresponding to the game screen of each frame between the game screen of the 61st frame and the game screen of the 71st frame. Since the second value is 55, the terminal device obtains the third state set corresponding to the game screen of the 51st frame, as well as the command corresponding to the game screen of the 52nd frame, the command corresponding to the game screen of the 53rd frame, the command corresponding to the game screen of the 54th frame and the command corresponding to the game screen of the 55th frame.Based on the object state of the virtual object contained in the game screen of the 51st frame and the command corresponding to the game screen of the 52nd frame, the object state of the virtual object contained in the game screen of the 52nd frame is obtained. Based on the object state of the virtual object contained in the game screen of the 52nd frame and the command corresponding to the game screen of the 53rd frame, the object state of the virtual object contained in the game screen of the 53rd frame is obtained. Based on the object state of the virtual object contained in the game screen of the 53rd frame and the command corresponding to the game screen of the 54th frame, the object state of the virtual object contained in the game screen of the 54th frame is obtained. Based on the object state of the virtual object contained in the game screen of the 54th frame and the command corresponding to the game screen of the 55th frame, the object state of the virtual object contained in the game screen of the 55th frame is obtained. In other words, the object state of the virtual object contained in the second game screen is obtained.
[0092] Figure 10 is a schematic diagram of another example of the procedure for obtaining the object state of a virtual object included in a second game screen according to an embodiment of the present invention. The first numerical value is 452, the second numerical value is 152, and the terminal device stores a third state set corresponding to the reference game screen of each frame among the reference game screens whose number of frames satisfies the number of frames, and instructions corresponding to the game screen of each frame between two adjacent reference game screens. The third state set 151 corresponding to the game screen of the 151st frame and the instruction 152 corresponding to the game screen of the 152nd frame are obtained, and the object state of the virtual object included in the second game screen is obtained based on the third state set 151 and the instruction 152.
[0093] This method is a combination of implementation method 1 and implementation method 2, and does not require the terminal device to store a state set corresponding to the game screen of each frame to be displayed, thus saving memory space on the terminal device compared to implementation method 1. Furthermore, by using a third state set corresponding to the reference game screen with the largest number of corresponding frames (the third game screen) among the reference game screens with a number of corresponding frames smaller than the second number, instructions corresponding to the game screen of each frame between the third game screen and the second game screen, and instructions corresponding to the second game screen, the computational load on the terminal device can be reduced compared to implementation method 2, the efficiency of acquiring the object state of virtual objects included in the second game screen can be improved, and the efficiency of acquiring the second game screen can be improved.
[0094] In one preferred embodiment, the terminal device obtains the object state of the virtual objects contained in the second game screen, then displays the second game screen, and continues the game starting from the second game screen. Therefore, a third state set corresponding to a reference game screen with a corresponding number of frames greater than the second number, and instructions corresponding to game screens with a corresponding number of frames equal to or greater than the second number, become unnecessary. Accordingly, the third state set corresponding to a reference game screen with a number of frames greater than the second number may be deleted, and instructions corresponding to game screens with a number of frames equal to or greater than the second number may be deleted. This saves memory space on the terminal device.
[0095] In one preferred embodiment, the above method of storing a third state set corresponding to a reference game screen and instructions corresponding to each game screen between two adjacent reference game screens in the terminal device requires a large amount of memory in the terminal device. Therefore, after obtaining the third state set corresponding to the reference game screen of the game, the terminal device may send the third state set corresponding to the reference game screen and the frame number corresponding to the reference game screen to the server, and have the server store the correspondence between the third state set corresponding to the reference game screen, the frame number corresponding to the reference game screen, and the third state set corresponding to the reference game screen. Alternatively, after obtaining the instructions corresponding to each game screen of each frame between two adjacent reference game screens, the terminal device may send the instructions corresponding to each frame's game screen and the frame number corresponding to each frame's game screen to the server, and have the server store the instructions corresponding to each frame's game screen and the correspondence between the frame number corresponding to each frame's game screen and the instructions corresponding to each frame's game screen. This eliminates the need to store the third state set corresponding to the reference game screen and the instructions corresponding to each frame's game screen between two adjacent reference game screens in the terminal device, thus saving memory space in the terminal device.
[0096] When the server stores a third state set corresponding to a reference game screen and instructions corresponding to the game screen of each frame between two adjacent reference game screens, the step of obtaining the object state of virtual objects contained in the second game screen based on a second numerical value includes sending a fourth acquisition request carrying the second numerical value to the server. When the server receives the fourth acquisition request, it parses the fourth acquisition request and obtains the second numerical value. The server retrieves the third state set corresponding to the third game screen, the instructions corresponding to the game screen of each frame between the third and second game screens, and the instructions corresponding to the second game screen from the server's memory space. The server obtains the object state of virtual objects contained in the second game screen based on the third state set corresponding to the third game screen, the instructions corresponding to the game screen of each frame between the third and second game screens, and the instructions corresponding to the second game screen. The server sends the object state of virtual objects contained in the second game screen to a terminal device so that the terminal device can obtain the object state of virtual objects contained in the second game screen. Here, the third game screen is the reference game screen with the largest number of corresponding frames among the reference game screens with a corresponding frame count smaller than the second value.
[0097] Preferably, the server retrieves a third state set corresponding to the third game screen, and instructions corresponding to the game screen for each frame in the third and second game screens, and instructions corresponding to the second game screen, from the server's memory space, and then transmits the third state set corresponding to the third game screen, the instructions corresponding to the game screen for each frame in the third and second game screens, and instructions corresponding to the second game screen to the terminal device. The terminal device receives the third state set corresponding to the third game screen, the instructions corresponding to the game screen for each frame in the third and second game screens, and instructions corresponding to the second game screen, and retrieves the object state of the virtual objects contained in the second game screen based on the third state set corresponding to the third game screen, the instructions corresponding to the game screen for each frame in the third and second game screens, and instructions corresponding to the second game screen.
[0098] In one preferred embodiment, after the server has sent the object state of virtual objects contained in the second game screen to the terminal device, or after the server has sent a third state set corresponding to the third game screen, as well as instructions corresponding to each frame of the game screen in the third and second game screens, and instructions corresponding to the second game screen to the terminal device, the server may delete the third state set corresponding to a reference game screen whose corresponding number of frames is greater than the second number, and delete the instructions corresponding to a game screen whose corresponding number of frames is equal to or greater than the second number. This can save memory space on the server.
[0099] In one preferred embodiment, the terminal device obtains the object state of the virtual objects contained in the second game screen, then performs screen rendering based on the object state of the virtual objects contained in the second game screen, and obtains the second game screen.
[0100] Preferably, the terminal device may acquire the state of static objects included in the second game screen, perform screen rendering based on the state of static objects included in the second game screen and the object state of virtual objects included in the second game screen, and acquire the second game screen.
[0101] The step of the server obtaining the object state of virtual objects included in the second game screen based on the second value is as described above. After the server obtains the object state of virtual objects included in the second game screen, the server performs screen rendering based on the object state of virtual objects included in the second game screen and obtains the second game screen. The server sends the second game screen to the terminal device so that the terminal device can obtain the second game screen. Preferably, the server obtains the state of static objects included in the second game screen, performs screen rendering based on the state of static objects included in the second game screen and the object state of virtual objects included in the second game screen, and obtains the second game screen. The server sends the second game screen to the terminal device so that the terminal device can obtain the second game screen.
[0102] In one preferred embodiment, the second game screen is displayed after it has been acquired. Figure 11 is a schematic diagram of an example of the display of the second game screen according to an embodiment of the present invention. The state of the virtual objects located in the virtual environment included in the second game screen is the object state of the virtual objects in the second game screen.
[0103] Step 204: Control the virtual object to resume the game from its history state.
[0104] Preferably, the second game screen may display a rewind widget, a fire widget, a jump widget, a prone widget, a crouch widget, a direction widget, and the first widget. In Figure 11, widget 1101 is a rewind widget, widget 1102 is a fire widget, widget 1103 is a jump widget, widget 1104 is a prone widget, widget 1105 is a crouch widget, widget 1106 is a direction widget, and widget 1107 is the first widget. At least one of these widgets controls the virtual object to resume the game from a history state.
[0105] In one preferred embodiment, the second game screen may further display a forward widget (not shown in Figure 11). In response to a trigger operation on the forward widget, a third game screen is displayed. The third game screen is obtained after advancing the game state of a virtual object in the virtual environment to a first state by controlling the game progression. The virtual object is controlled to resume the game from the first state. Other widgets may also be displayed on the third game screen, but embodiments of the present invention are not limited thereto.
[0106] The step of displaying a third game screen in response to a trigger operation on the forward widget includes the steps of: determining a candidate value in response to a trigger operation on the forward widget, based on the game's frame rate and a first time length, wherein the first time length is the time length corresponding to the forward widget, and the first time length is less than the reference time length; determining a third value based on the candidate value and a second value, wherein the game screen for the third number-th frame of the game is the third game screen; and, if the third value is less than or equal to the first value and greater than the second value, obtaining and displaying the third game screen based on the third value. Preferably, the step of determining a third value based on a candidate value and a second value includes the step of adding the candidate value and the second value to obtain the third value. The step of obtaining a third game screen based on a third value is the same as the step of obtaining a second game screen based on a second value in step 202 above, and its explanation is omitted here.
[0107] Preferably, if the third value is greater than the first value, a third prompt message is displayed to indicate that further progress is not possible. The content of the third prompt message is arbitrary, and embodiments of the present invention are not limited thereto.
[0108] For example, the game's frame rate is 30 frames / second, the reference time length corresponding to the rewind widget is 10 seconds, and the first time length for the forward widget is 5 seconds. The first game screen is the game screen at frame 452 of the game, and the rewind widget is displayed on the first game screen. In response to a trigger operation on the rewind widget, based on the game's frame rate and reference time length, it is determined that a rewind of 300 frames is needed, i.e., the game screen at frame 152 of the game needs to be retrieved. After retrieving the game screen at frame 152 of the game, the second game screen is displayed. The second game screen is the game screen at frame 152 of the game, and the forward widget is displayed on the second game screen. In response to a trigger operation on the forward widget, based on the game's frame rate and the first time length, it is determined that a forward of 150 frames is needed, i.e., the game screen at frame 302 of the game needs to be retrieved. After retrieving the game screen at frame 302 of the game, the third game screen is displayed. The third game screen is the game screen at frame 302 of the game.
[0109] The above method, when the rewind function is triggered, displays a second game screen, and controls the virtual objects located in the virtual environment contained in the second game screen to resume the game from the history state, where the game state of the virtual objects is the history state. According to this method, if the object state on the player's first game screen has not reached the expected state, for example, if an accidental hit occurs, or if an unauthorized operation is triggered on the first game screen, the player can use the rewind function to return the game to the second game screen prior to the first game screen and continue the game with the object state on the second game screen. Such game rewinding allows the player to quickly and easily rewind the game progress during gameplay, diversifying the methods of player control over the game, improving the flexibility of player control over the game, and enhancing the player's gaming experience.
[0110] Figure 12 is a flowchart of an example of an operation control method according to an embodiment of the present invention. Here, the currently displayed first game screen is the game screen of the 22nd frame of the game, and the object state of the virtual objects contained in one frame of the game screen is saved at intervals of 10 frames. That is, the object state of the virtual objects contained in the game screen of the 1st frame, the object state of the virtual objects contained in the game screen of the 11th frame, and the object state of the virtual objects contained in the game screen of the 21st frame are saved in the terminal device. This process includes the following steps 1201 to 1226.
[0111] Step 1201: Display the game screen for the first frame and save the object state of the virtual objects contained in the game screen for the first frame.
[0112] Step 1202: Display the game screen for the second frame and save the instructions corresponding to the game screen for the second frame.
[0113] The procedure for displaying the game screen from the 3rd frame to the 10th frame is the same as the procedure for displaying the game screen from the 2nd frame, so we will omit the explanation here.
[0114] Step 1211: Display the game screen for the 11th frame and save the object state of the virtual objects contained in the game screen for the 11th frame.
[0115] Step 1212: Display the game screen for the 12th frame and save the instructions corresponding to the game screen for the 12th frame.
[0116] Here, the procedure for displaying the game screen from the 13th frame to the 20th frame is the same as the procedure for displaying the game screen from the 12th frame, so we will omit the explanation here.
[0117] Step 1221: Display the game screen for the 21st frame and save the object state of the virtual objects contained in the game screen for the 21st frame.
[0118] Step 1222: Display the game screen for the 22nd frame and save the command corresponding to the game screen for the 22nd frame.
[0119] Step 1223: Accept the trigger operation for the rewind widget and determine that it is necessary to return to the game screen of the 13th frame based on the number of frames of the currently displayed game screen and the time length (length of time) corresponding to the rewind widget.
[0120] Preferably, the step of determining whether it is necessary to return to the 13th frame of the game screen, based on the number of frames of the currently displayed game screen and the time duration corresponding to the rewind widget, is similar to the step of determining the second value in step 202 above, and its explanation is omitted here.
[0121] Step 1224: Obtain the object state of the virtual objects contained in the game screen of the 11th frame, the instruction corresponding to the game screen of the 12th frame, and the instruction corresponding to the game screen of the 13th frame.
[0122] Step 1225: Based on the object state of the virtual objects contained in the game screen of the 11th frame, the instruction corresponding to the game screen of the 12th frame, and the instruction corresponding to the game screen of the 13th frame, retrieve the game screen of the 12th frame.
[0123] Preferably, the step of obtaining the game screen of the 12th frame is the same as the step of obtaining the second game screen described above, and its explanation is omitted here.
[0124] Step 1226: Display the game screen for the 12th frame.
[0125] Preferably, the step of displaying the 12th frame of the game screen is the same as the step of displaying the second game screen described above, and its explanation is omitted here.
[0126] Figure 13 is a schematic diagram of an example of the configuration of an operation control device according to an embodiment of the present invention. As shown in Figure 13, the device includes the following parts.
[0127] The display module 1301 displays a first game screen. The first game screen includes virtual objects located in a virtual environment.
[0128] The control module 1302 controls the virtual object to play the game in the virtual environment.
[0129] The display module 1301 displays a second game screen in response to the trigger operation of the rewind function. The second game screen is obtained by controlling the game progress so that the game state of virtual objects in the virtual environment returns to the history state.
[0130] The control module 1302 controls the virtual object to resume the game from its history state.
[0131] In one preferred embodiment, the apparatus further includes the following parts:
[0132] The acquisition module, in response to the trigger operation of the rewind function, determines a reference value based on the game's frame rate and reference time length, where the reference time length is the time length corresponding to the rewind function, and the reference value is the number of frames in the rewind screen. If the reference value is smaller than the first value, it determines a second value based on the first value and the reference value, where the first value is the number of frames corresponding to the first game screen in the game, and the second value is the number of frames corresponding to the second game screen in the game. Based on the second value, it acquires the second game screen.
[0133] The display module 1301 displays the second game screen.
[0134] In one preferred embodiment, the acquisition module acquires the object state of virtual objects contained in the second game screen based on a second numerical value, and acquires the second game screen based on the object state of virtual objects contained in the second game screen.
[0135] In one preferred embodiment, the terminal device stores a first set of states corresponding to each game screen from the first frame of the game to the first game screen, and a correspondence between the first set of states corresponding to each frame's game screen and the frame number corresponding to each frame's game screen. The first set of states corresponding to each frame's game screen includes the object states of virtual objects contained in the game screen of that frame.
[0136] The acquisition module determines the first state set corresponding to the second numerical game screen from the first state set corresponding to the game screen of each frame, and sets the object state of the virtual objects included in the determined first state set as the object state of the virtual objects included in the second game screen.
[0137] In one preferred embodiment, the apparatus further includes the following parts:
[0138] The deletion module deletes the first set of state corresponding to the game screen of each frame from the second game screen to the first game screen.
[0139] In one preferred embodiment, the terminal device stores a second set of state corresponding to the first frame of the game, and instructions corresponding to the game screens of each frame from the game screen of the second frame to the first game screen. The instruction corresponding to the game screen of the i-th frame indicates the instructions necessary to control the state change of the control object from the display of the game screen of the (i - 1)-th frame to the display of the game screen of the i-th frame. The second set of state includes the object states of the virtual objects included in the game screen of the first frame, where 1 < i ≤ the first numerical value.
[0140] Based on the second numerical value, the acquisition module determines, from the instructions corresponding to the game screens of each frame, the instructions corresponding to the game screens of each frame from the game screen of the second frame to the second game screen, and based on the second set of state and the instructions corresponding to the game screens of each frame from the game screen of the second frame to the second game screen, acquires the object states of the virtual objects included in the second game screen.
[0141] > In one preferred embodiment, the acquisition module acquires the object state of the virtual object included in the game screen of the second frame based on the object state of the virtual object included in the game screen of the first frame and the instruction corresponding to the game screen of the second frame, and until acquiring the object state of the virtual object included in the second game screen, uses the second set of state to repeatedly acquire the object state of the virtual object included in the game screen of the i-th frame based on the object state of the virtual object included in the game screen of the (i - 1)-th frame and the instruction corresponding to the game screen of the i-th frame.
[0142] In one preferred embodiment, the delete module deletes the instructions corresponding to the game screen for each frame from the second game screen to the first game screen.
[0143] In one preferred embodiment, the terminal device stores a third set of states corresponding to multiple reference game screens, and a correspondence between the third set of states corresponding to each frame's reference game screen and the number of frames corresponding to each frame's reference game screen. The reference game screen is a game screen whose number of frames satisfies the frame count requirement. The third set of states corresponding to each frame's reference game screen includes the object states of virtual objects contained in that frame's reference game screen.
[0144] The acquisition module determines the object state of the virtual objects included in the second game screen based on a third set of states corresponding to the second game screen, provided that the second numerical value satisfies the frame count requirement.
[0145] In one preferred embodiment, the delete module deletes a third set of states corresponding to a reference game screen whose corresponding number of frames is greater than or equal to a second number.
[0146] In one preferred embodiment, the terminal device stores a third set of states corresponding to multiple reference game screens, a correspondence between the third set of states corresponding to each frame's reference game screen and the number of frames corresponding to each frame's reference game screen, and instructions corresponding to the game screen of each frame between two adjacent frames' reference game screens. A reference game screen is a game screen whose number of frames satisfies the frame count requirement. The instructions corresponding to the game screen of each frame between two adjacent frames' reference game screens indicate the necessary instructions from the display of the game screen of the frame immediately preceding the frame to the display of the game screen of the frame. The third set of states corresponding to each frame's reference game screen includes the object states of virtual objects contained in the reference game screen of that frame.
[0147] If the acquisition module does not satisfy the frame count requirement, it determines a third state set corresponding to the third game screen from a third state set corresponding to multiple reference game screens based on the second value. The third game screen is the reference game screen with the largest number of frames among the reference game screens whose corresponding frame count is less than the second value. The module then determines the commands corresponding to the game screens of each frame from the game screen immediately following the third game screen to the second game screen based on the commands corresponding to the game screen of each frame. Based on the third state set corresponding to the third game screen and the commands corresponding to the game screens of each frame from the game screen immediately following the third game screen to the second game screen, the module acquires the object state of the virtual objects contained in the second game screen.
[0148] In one preferred embodiment, the delete module deletes a third set of states corresponding to reference game screens where the number of frames is greater than a second number, and deletes instructions corresponding to game screens where the number of frames is equal to or greater than the second number.
[0149] In one preferred embodiment, the display module 1301, in response to a trigger operation of the rewind function, displays first prompt information on the first game screen indicating that rewinding is not possible if the reference value is greater than or equal to a first value.
[0150] In one preferred embodiment, in response to a trigger operation of the rewind function, the display module 1301 displays a second prompt on the first game screen indicating that a second game screen is being acquired, if the reference number is less than the first number.
[0151] In one preferred embodiment, the first game screen further includes a rewind widget.
[0152] The device further includes a decision module that determines to trigger a rewind function in response to a trigger operation of the rewind widget.
[0153] The above device, when the rewind function is triggered, displays a second game screen, and controls the virtual objects located in the virtual environment contained in the second game screen to resume the game from the history state, where the game state of the virtual objects is the history state. According to this method, if the object state on the player's first game screen has not reached the expected state, for example, if it is accidentally hit, or if an unauthorized operation is triggered on the first game screen, the player can use the rewind function to return the game to the second game screen prior to the first game screen and continue the game with the object state on the second game screen. Such game rewinding allows the player to quickly and easily rewind the progress of the game during gameplay, diversifying the methods of player control over the game, improving the flexibility of player control over the game, and enhancing the player's gaming experience.
[0154] Furthermore, the above-described apparatus merely illustrates the division of each functional module in realizing its functions. In actual application programs, the assignment of the above functions may be carried out by different functional modules as needed; that is, the internal structure of the apparatus may be divided into different functional modules to achieve all or part of the functions described above. Moreover, the apparatus according to the above embodiment belongs to the same idea as the embodiment of the method, and its specific implementation process is described in detail in the embodiment of the method and will not be described further in this specification.
[0155] Figure 14 is a schematic diagram of an example configuration of a terminal device 1400 according to an embodiment of the present invention. The terminal device 1400 may be a portable mobile terminal such as a smartphone, tablet computer, MP3 (Moving Picture Experts Group Audio Layer III) player, MP4 (Moving Picture Experts Group Audio Layer IV) player, laptop computer, or desktop computer. The terminal device 1400 may also be referred to by other names such as user device, portable terminal, laptop terminal, or desktop terminal.
[0156] Typically, terminal equipment 1400 includes a processor 1401 and memory 1402.
[0157] The processor 1401 may include one or more processing cores, such as a 4-core processor or an 8-core processor. The processor 1401 may be implemented in at least one hardware form, such as a DSP (Digital Signal Processing), an FPGA (Field Programmable Gate Array), and a PLA (Programmable Logic Array). The processor 1401 may include a main processor and a coprocessor. The main processor is a processor used to process data in the awake state and is also called a CPU (Central Processing Unit). The coprocessor is a low-power processor used to process data in the standby state. In some embodiments, the processor 1401 may be integrated with a GPU (Graphics Processing Unit), which is used to render and draw content that needs to be displayed on a screen. In some embodiments, the processor 1401 may further include an AI (Artificial Intelligence) processor, which is used to process computational operations related to machine learning.
[0158] The memory 1402 may include one or more computer-readable storage media, which may be tangible and non-temporary. The memory 1402 may further include high-speed random-access memory and non-volatile memory, such as one or more magnetic disk storage devices or flash memory storage devices. In some embodiments, the non-temporary computer-readable storage media in the memory 1402 stores at least one instruction, which is used to be executed by the processor 1401 to implement an operation control method according to an embodiment of the present invention.
[0159] In some embodiments, the terminal device 1400 may further preferably include a peripheral device interface 1403 and at least one peripheral device. The processor 1401, memory 1402, and peripheral device interface 1403 may be connected via a bus or signal lines. Each peripheral device may be connected to the peripheral device interface 1403 via a bus, signal lines, or circuit board. Specifically, the peripheral device includes at least one of a radio frequency circuit 1404, a display 1405, a camera component 1406, an audio circuit 1407, and a power supply 1409.
[0160] The peripheral device interface 1403 may be used to connect at least one peripheral device related to I / O (Input / Output) to the processor 1401 and the memory 1402.
[0161] The radio frequency circuit 1404 is used to receive and transmit RF (Radio Frequency) signals, also known as electromagnetic signals.
[0162] Display 1405 is used to display the UI (User Interface).
[0163] The camera component 1406 is used to capture images or videos.
[0164] The audio circuit 1407 may include a microphone and a speaker.
[0165] The power supply 1409 is used to supply power to various components within the terminal device 1400.
[0166] In some embodiments, the terminal device 1400 further includes one or more sensors 1410. These one or more sensors 1410 include, but are not limited to, an accelerometer 1411, a gyroscope 1412, a pressure sensor 1413, an optical sensor 1415, and a proximity sensor 1416.
[0167] Furthermore, as a person skilled in the art can understand, the terminal device 1400 is not limited to the configuration shown in Figure 14, and may include more or fewer components than those shown, or may combine specific components, or may employ a different arrangement of components.
[0168] Figure 15 is a schematic diagram of an example of the configuration of a server according to an embodiment of the present invention. The server 1500 can vary considerably depending on its configuration or performance and may include one or more processors (Central Processing Units: CPUs) 1501 and one or more memories 1502. Here, at least one program code is stored in the one or more memories 1502. The at least one program code is loaded and executed by one or more processors 1501 to implement the operation control method according to the various embodiments of the present invention. The server 1500 may also include components such as wired or wireless network interfaces for input / output, a keyboard, and input / output interfaces. The server 1500 may also include other components for realizing the functions of the device, which are not described here.
[0169] Embodiments of the present invention further provide a computer-readable storage medium in which a computer program is stored, wherein the computer program is loaded and executed by a processor so that the computer can implement any of the operation control methods described above.
[0170] Preferably, the computer-readable storage medium described above may be a read-only memory (ROM), random access memory (RAM), a compact disc read-only memory (CD-ROM), magnetic tape, a floppy disk, or an optical data storage device.
[0171] Embodiments of the present invention further provide a computer program product in which a computer program is stored, wherein the computer program is loaded and executed by a processor so that the computer implements any of the operation control methods described above.
[0172] Furthermore, the information (including, but not limited to, user device information and user personal information), data (including, but not limited to, data used for analysis, stored data, and displayed data) and signals referred to herein are authorized by the user or fully authorized by each party, and the collection, use, and processing of relevant data must comply with the relevant laws and standards of the relevant countries and regions. For example, the game screens referred to herein are obtained with full permission.
[0173] In this specification, "plural" means two or more things. "And / or" describes the relationship between the related objects, and means that there can be three possible relationships. For example, A and / or B can mean that A exists alone, A and B exist simultaneously, or B exists alone. In this specification, the letter " / " generally means that the related objects are in an "or" relationship.
[0174] The numbering of the above examples in this specification is for illustrative purposes only and does not indicate any indication of the superiority or inferiority of the examples.
[0175] The foregoing merely describes exemplary embodiments of the present invention and does not limit it. Modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of the present invention are included within the scope of protection of the present invention.
Claims
1. A method of operation control performed by a terminal device, A step of displaying a first game screen, wherein the first game screen includes virtual objects located in a virtual environment, The steps include controlling the virtual object to play a game in the virtual environment, Steps include: displaying a second game screen in response to a trigger operation of the rewind function, wherein the second game screen is a screen obtained by controlling the game progress so that the game state of the virtual object in the virtual environment returns to the history state; A method comprising the step of controlling the virtual object to resume the game from the history state.
2. The step of displaying a second game screen in response to the trigger operation of the rewind function is: Steps include: determining a reference value based on the frame rate and reference time length of the game in response to a trigger operation of the rewind function, wherein the reference time length is the time length corresponding to the rewind function, and the reference value is the number of frames in the rewind screen; If the reference value is smaller than the first value, the step of determining a second value based on the first value and the reference value, wherein the first value is the number of frames corresponding to the first game screen in the game, and the second value is the number of frames corresponding to the second game screen in the game. A step of obtaining the second game screen based on the second numerical value, The method according to claim 1, comprising the step of displaying the second game screen.
3. The step of obtaining the second game screen based on the second numerical value is: The steps include obtaining the object state of the virtual object included in the second game screen based on the second numerical value, The method according to claim 2, comprising the step of obtaining the second game screen based on the object state of virtual objects included in the second game screen.
4. The terminal device stores a first set of states corresponding to the game screens of each frame from the first frame of the game to the first game screen, and a correspondence between the first set of states corresponding to each frame's game screen and the number of frames corresponding to each frame's game screen. The first state set corresponding to the game screen of each frame includes the object state of the virtual objects contained in the game screen of that frame. The step of obtaining the object state of the virtual object included in the second game screen based on the second numerical value is: The method according to claim 3, comprising the steps of determining a first state set corresponding to a second numerical game screen from a first state set corresponding to the game screen of each frame, and setting the object state of the virtual objects included in the determined first state set to the object state of the virtual objects included in the second game screen.
5. Based on the second numerical value, after obtaining the object state of the virtual object included in the second game screen, The method according to claim 4, further comprising the step of deleting a first state set corresponding to the game screen of each frame from the second game screen to the first game screen.
6. The terminal device stores a second state set corresponding to the first frame of the game, and commands corresponding to the game screens of each frame from the game screen of the second frame to the first game screen. The command corresponding to the game screen of the i-th frame indicates the command necessary to control the state changes of the control object from the display of the game screen of the (i-1)th frame to the display of the game screen of the i-th frame. The second state set includes the object states of virtual objects contained in the game screen of the first frame, where 1 < i ≤ a first numerical value. The step of obtaining the object state of the virtual object included in the second game screen based on the second numerical value is: Based on the second numerical value, the steps include determining the commands corresponding to the game screens of each frame from the game screen of the second frame to the second game screen, from the commands corresponding to the game screens of each frame, The method according to claim 3, comprising the step of obtaining the object state of virtual objects included in the second game screen based on the second state set and the commands corresponding to the game screens of each frame from the game screen of the second frame to the second game screen.
7. The step of obtaining the object state of virtual objects included in the second game screen based on the second state set and the commands corresponding to the game screens of each frame from the game screen of the second frame to the second game screen is: The steps include obtaining the object state of the virtual object included in the game screen of the second frame based on the object state of the virtual object included in the game screen of the first frame and the command corresponding to the game screen of the second frame, The method according to claim 6, comprising the step of iteratively acquiring the object state of a virtual object included in the i-th frame of the game screen using a second set of states, based on the object state of the virtual object included in the i-th frame of the game screen and the command corresponding to the i-th frame of the game screen, until the object state of the virtual object included in the second game screen is acquired.
8. Based on the second state set and the commands corresponding to the game screens of each frame from the second frame's game screen to the second game screen, after obtaining the object state of the virtual objects included in the second game screen, The method according to claim 6, further comprising the step of deleting instructions corresponding to the game screen of each frame from the second game screen to the first game screen.
9. The terminal device stores a third set of states corresponding to the reference game screens of multiple frames, and the correspondence between the third set of states corresponding to the reference game screen of each frame and the number of frames corresponding to the reference game screen of each frame. The aforementioned reference game screen is a game screen whose number of frames satisfies the frame count requirement. The third state set corresponding to the reference game screen of each frame includes the object state of the virtual objects contained in the reference game screen of that frame. The step of obtaining the object state of the virtual object included in the second game screen based on the second numerical value is: The method according to claim 3, further comprising the step of determining the object state of virtual objects included in the second game screen based on a third set of states corresponding to the second game screen, if the second numerical value satisfies the frame count requirement.
10. If the second numerical value satisfies the frame count requirement, then, based on the third state set corresponding to the second game screen, the object state of the virtual objects included in the second game screen is determined, The method according to claim 9, further comprising the step of deleting a third state set corresponding to a reference game screen whose corresponding number of frames is greater than or equal to the second numerical value.
11. The terminal device stores a third state set corresponding to the reference game screens of multiple frames, a correspondence between the third state set corresponding to the reference game screen of each frame and the number of frames corresponding to the reference game screen of each frame, and commands corresponding to the game screen of each frame between the reference game screens of two adjacent frames. The aforementioned reference game screen is a game screen whose number of frames satisfies the frame count requirement. The instructions corresponding to the game screen of each frame between two adjacent reference game screens indicate the necessary instructions from the display of the game screen of the frame immediately preceding that frame to the display of the game screen of that frame. The third state set corresponding to the reference game screen of each frame includes the object state of the virtual object contained in the reference game screen of that frame. The step of obtaining the object state of the virtual object included in the second game screen based on the second numerical value is: If the second numerical value does not satisfy the frame count requirement, the step of determining a third state set corresponding to a third game screen from a third state set corresponding to a plurality of reference game screens based on the second numerical value, wherein the third game screen is a reference game screen having the largest number of frames among the reference game screens whose corresponding number of frames is smaller than the second numerical value, The steps include determining the commands corresponding to the game screens of each frame from the command corresponding to the game screen of the frame immediately following the third game screen to the second game screen, The method according to claim 3, comprising the steps of obtaining the object state of virtual objects included in the second game screen based on a third state set corresponding to the third game screen and commands corresponding to the game screens of each frame from the game screen of the frame immediately following the third game screen to the second game screen.
12. After obtaining the object state of the virtual objects included in the second game screen based on the third state set corresponding to the third game screen and the commands corresponding to the game screens of each frame from the game screen of the frame immediately following the third game screen to the second game screen, The method according to claim 11, further comprising the steps of deleting a third state set corresponding to a reference game screen whose number of frames is greater than the second number, and deleting an instruction corresponding to a game screen whose number of frames is equal to or greater than the second number.
13. The method according to claim 2, further comprising the step of displaying a first prompt on the first game screen indicating that rewinding is not possible if the reference value is greater than or equal to the first value in response to a trigger operation of the rewind function.
14. The method according to claim 2, further comprising the step of displaying a second prompt on the first game screen indicating that a second game screen is being acquired, in response to a trigger operation of the rewind function, if the reference value is smaller than the first value.
15. The first game screen further includes a rewind widget, The method according to claim 1, further comprising the step of deciding to trigger the rewind function in response to a trigger operation of the rewind widget.
16. An operation control device including a display module and a control module, The display module displays a first game screen, and the first game screen includes virtual objects located in a virtual environment. The control module controls the virtual object to play the game in the virtual environment. The display module displays a second game screen in response to a trigger operation of the rewind function, and the second game screen is a screen obtained by controlling the game progress so that the game state of the virtual object in the virtual environment returns to the history state. The control module is a device that controls the virtual object to resume the game from the history state.
17. A computer device comprising a processor and memory storing a computer program, wherein the computer program is loaded and executed by the processor so that the computer device implements the operation control method described in any one of claims 1 to 15.
18. A computer program that causes a computer to execute the operation control method described in any one of claims 1 to 15.