Program and system

The program uses AI to analyze user play logs and generate tailored advice, addressing the limitations of conventional game advice systems by providing versatile and timely guidance, enhancing the gaming experience.

JP7729859B2Active Publication Date: 2025-08-26COLOPL
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
JP2023136511
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2023-08-24
Publication Date
2025-08-26
Estimated Expiration
2043-08-24

AI Technical Summary

Technical Problem

Conventional game advice systems are limited in versatility and can only provide advice for a limited number of game types or when repeatedly playing the exact same course, lacking comprehensive guidance for users.

Method used

A program that utilizes a trained model to generate advice based on user play logs, analyzing game progress and providing tailored recommendations using AI learning and generation techniques.

Benefits of technology

Enhances the versatility of game advice, allowing for more comprehensive and timely guidance to users, improving their gaming experience and helping them overcome challenging parts.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007729859000001
    Figure 0007729859000001
  • Figure 0007729859000002
    Figure 0007729859000002
  • Figure 0007729859000003
    Figure 0007729859000003
Patent Text Reader

Abstract

To enhance the versatility of advice for a game.SOLUTION: A program causes a computer to function as: storage means capable of storing actions of a user-operable character in a virtual space as a play log; and generation means for generating output data indicating advice regarding a play content related to the play log when the play log is newly stored, on the basis of at least a learned model learned on the basis of learning data including the play log.SELECTED DRAWING: Figure 22
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to a program and a system. [Background technology]

[0002] Conventionally, there is known a technology for analyzing game data and providing advice to a user. Specifically, in a racing game, data on previous runs on a course is first downloaded. Next, based on the results of the data analysis, a technology is known in which advice is given to the user regarding previous mistakes made while driving in the game or before driving (for example, see Patent Document 1).

[0003] Furthermore, in a racing game, when the same course is run, first, the current play is compared with the previous play to analyze the changes since the previous play, and then, based on the analysis results, advice is given to the user by voice (for example, Patent Document 2, etc.). [Prior art documents] [Patent documents]

[0004] [Patent Document 1] Japanese Patent Application Laid-Open No. 2006-141665 [Patent Document 2] Japanese Patent Application Laid-Open No. 2002-028370 Summary of the Invention [Problem to be solved by the invention]

[0005] Providing advice to the user as the game progresses is important for preventing the user from being unable to overcome difficult parts and becoming discouraged, and for allowing the user to continue enjoying the game.

[0006] However, conventional techniques can only provide advice for a limited number of game types, or only when repeatedly playing the exact same course in a racing game, and are therefore limited in the situations in which advice can be given. Furthermore, the types of advice are limited to advice on how to deal with mistakes, etc. As such, conventional techniques lack the versatility of advice for games.

[0007] The present invention aims to increase the versatility of advice for games. [Means for solving the problem]

[0008] In order to solve the above problems, the present invention provides a program comprising: Computer, a storage means for storing actions of a user-controllable character in a virtual space as a play log; At least, the device functions as a generation means for generating output data indicating advice regarding the play content related to the play log when the play log is newly stored, based on a trained model trained on learning data including the play log. [Effects of the Invention]

[0009] According to the present invention, it is possible to increase the versatility of advice for games. [Brief explanation of the drawings]

[0010] [Figure 1] FIG. 1 is a diagram illustrating an example of a system configuration according to an embodiment of the present invention. [Figure 2] FIG. 10 is a diagram illustrating an example of pre-processing. [Figure 3] FIG. 10 is a diagram illustrating an example of execution processing. [Figure 4] FIG. 1 is a diagram illustrating an example of the overall process of AI learning and execution. [Figure 5] FIG. 2 is a diagram illustrating an example of a hardware configuration of an information processing device. [Figure 6] FIG. 1 is a network diagram showing an example of an AI configuration. [Figure 7]FIG. 10 is a diagram showing an example of input in the first example. [Figure 8] FIG. 10 is a diagram showing an example of input of a moving image in the first example. [Figure 9] FIG. 10 is a diagram showing a first output example in RPG. [Figure 10] FIG. 10 is a diagram showing a second output example in RPG. [Figure 11] FIG. 10 is a diagram showing an example of input in the second example. [Figure 12] FIG. 10 is a diagram showing a first input example in the second example. [Figure 13] FIG. 10 is a diagram showing a second input example in the second example. [Figure 14] FIG. 10 is a diagram showing a third input example in the second example. [Figure 15] FIG. 10 is a diagram showing a fourth input example in the second example. [Figure 16] FIG. 10 is a diagram illustrating an example of output in the second example. [Figure 17] FIG. 11 is a diagram showing an example of input in the third example. [Figure 18] This is an example of input play data. [Figure 19] 10 is an input example of video data in the third example. [Figure 20] FIG. 11 is a diagram illustrating an example of output in the third example. [Figure 21] FIG. 10 is a diagram illustrating an example of overall processing. [Figure 22] FIG. 2 is a diagram illustrating an example of a functional configuration. [Figure 23] FIG. 10 is a diagram illustrating a configuration example using an auxiliary device. DETAILED DESCRIPTION OF THE INVENTION

[0011] Hereinafter, an embodiment will be described with reference to the drawings.

[0012] [System configuration example] 1 is a diagram showing an example of a system configuration according to this embodiment. For example, as shown in FIG. 1, a system 1 mainly includes user terminals 20A, 20B, and 20C (hereinafter, these may be collectively referred to as "user terminals 20") and a server 11.

[0013] Hereinafter, the person who manages the server 11 will be referred to as the "administrator 5." Furthermore, the people who operate the user terminals 20A, 20B, and 20C will be referred to as the "user 4A," "user 4B," and "user 4C," respectively (hereinafter, these may be collectively referred to as the "user 4").

[0014] The administrator 5 is a person who operates the information processing service provided by the system 1. On the other hand, the user 4 is a person who uses the information processing service provided by the system 1. Furthermore, the administrator 5 and the user 4 differ in which information processing device they operate: the server 11, which is an example of a management device, or the user terminal 20. Hereinafter, the user 4 will be the player of the game, and the administrator 5 will manage the game and the server 11.

[0015] Although the example shown in FIG. 1 has three user terminals 20 and one server 11, the number of servers 11, the number of user terminals 20, the number of administrators 5, and the number of users 4 are not important.

[0016] The server 11 and the user terminal 20 are connected to each other so as to be able to communicate with each other via a communication network 2. For example, the communication network 2 is the Internet, a mobile communication system (for example, a public line such as 4G (4th Generation, fourth generation mobile communication standard) or 5G (5th Generation, fifth generation mobile communication standard)), a wireless network such as Wi-Fi (registered trademark), or a combination of these.

[0017] The user terminal 20 downloads a program for playing a game (hereinafter referred to as a "game program") from the server 11 or accesses the server 11 to provide a game service. Note that communication with the server 11 is not required to play a game. In other words, the user terminal 20 may download a program or install it from a medium to create an environment for playing a game.

[0018] [Examples of AI (Artificial Intelligence) learning and execution] Hereinafter, AI learns through "pre-processing." The AI ​​in the learning stage, i.e., "pre-processing," will be referred to as the "learning model A1." Then, once learning has progressed to a certain extent, the learning model A1 becomes the "trained model A2." Hereinafter, the execution stage in which output processing is performed using the trained model A2 will be referred to as the "execution process."

[0019] The "pre-processing" is performed before the "execution processing." However, the "pre-processing," i.e., the trained model A2 may continue to train after the "execution processing."

[0020] [Pre-processing example] 2 is a diagram showing an example of pre-processing. For example, the pre-processing is performed by the server 11.

[0021] The learning model A1 receives learning data D1 as input and performs learning. That is, the learning model A1 performs so-called "supervised" learning.

[0022] The learning data D1 includes known log data and the like, and is data to which a "correct answer" for this log data is associated. Specifically, the learning data D1 includes log data indicating the game play results and play process, such as eleventh data D11, twelfth data D12, thirteenth data D13, etc. (including a data group that compiles multiple data such as the eleventh data D11, the twelfth data D12, and the thirteenth data D13. Hereinafter, simply referred to as "log data"), and correct answer data D20.

[0023] The learning model A1 learns a correspondence relationship that outputs correct answer data D20 in response to input log data, based on input learning data D1.

[0024] The log data will be described in detail later.

[0025] Furthermore, it is desirable that the learning model A1 learns using big data D4. For example, the big data D4 is data on the Internet. However, the big data D4 may also be data input by an administrator 5 or the like.

[0026] [Execution processing example] 3 is a diagram showing an example of the execution process. For example, the execution process is performed by the user terminal 20, or by the user terminal 20 and the server 11 working together.

[0027] The trained model A2 is in a state where the trained model A1 has been trained through pre-processing. That is, when the pre-processing shown in Figure 2 is executed, the trained model A2 is generated.

[0028] When unknown data D2 is input, the trained model A2 generates output data D3 for the unknown data D2.

[0029] The unknown data D2 is unknown log data, i.e., data for which the "correct answer" to the log data is unknown at the time of input. Specifically, the unknown data D2 includes unknown log data indicating the game play results and play process, such as the 21st data D21, the 22nd data D22, the 23rd data D23, etc. (including the case of a data group combining multiple data such as the 21st data D21, the 22nd data D22, and the 23rd data D23). For example, the unknown data D2 is composed of the same type of data as the learning data D1 and the log data.

[0030] When the output data D3 is generated, the output data D3 is transmitted to, for example, the user terminal 20. Thereafter, the user terminal 20 outputs an output screen or the like to the user 4 based on the output data D3.

[0031] The output data D3 and the output based on the output data D3 will be described in detail later.

[0032] Fig. 4 is a diagram showing an example of the overall process of AI learning and execution. The relationship between the pre-processing shown in Fig. 2 and the execution process shown in Fig. 3 is as shown in Fig. 4.

[0033] Note that the pre-processing and execution processing do not have to be performed in the sequential order illustrated in the figure. Therefore, it is not necessary to consecutively perform the period during which preparation is performed by the pre-processing and the subsequent period during which execution processing is performed. Therefore, once the trained model A2 has been created, the execution processing may be performed after a period of time has elapsed since the pre-processing. Furthermore, once the trained model A2 has been generated, the execution processing may be performed by reusing the trained model A2.

[0034] The learning data D1 and unknown data D2 are different between the learning process and the execution process. Also, the AI ​​starts as a learning model A1 in the learning stage, but after a certain amount of learning, it becomes a trained model A2. In this way, the trained model A2 trained using big data D4 as training data is what is known as "generative AI."

[0035] The eleventh data D11 included in the learning data D1 and the twenty-first data D21 included in the unknown data D2 (hereinafter, the same applies to the twelfth data D12, the twenty-second data D22, etc.) are the same data type. That is, both the eleventh data D11 and the twenty-first data D21 are log data.

[0036] In the learning data D1, the "correct answer" is known, whereas in the unknown data D2, the "correct answer" is unknown. Specifically, the learning data D1 includes the correct answer data D20, whereas the unknown data D2 does not include the correct answer data D20. Therefore, in the learning data D1, the relationship between the log data and the correct answer data D20 is known.

[0037] On the other hand, the unknown data D2 does not include the correct answer data D20, and the "correct answer" for the unknown data D2 is unknown. The trained model A2 generates output data D3 for the unknown data D2 based on the correlation between the training data D1 trained in pre-processing and the correct answer data D20.

[0038] A part of the execution process may be replaced by a process using a table, etc. In this way, the pre-processing in a process using a table, etc. (so-called rule-based processing) is a process of preparing to input a table (also called a look-up table (LUT)), a mathematical formula, etc.

[0039] [Example of hardware configuration of information processing device] 5 is a hardware configuration diagram of an information processing device. The information processing device is a server 11, a user terminal 20, etc. Hereinafter, it is assumed that the information processing device has the same hardware configuration as the server 11. For example, the information processing device is a workstation or a general-purpose computer such as a personal computer. However, each information processing device may have a different hardware configuration.

[0040] The server 11 mainly includes a processor 111, a memory 112, a storage 113, an input / output interface 114, and a communication interface 115. Furthermore, each component of the server 11 is connected to a communication bus .

[0041] The processor 111 executes a series of instructions contained in a server program 11P stored in the memory 112 or the storage 113, thereby realizing processing and control.

[0042] The processor 111 is, for example, an arithmetic device and a control device such as a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), an MPU (Micro Processing Unit), an FPGA (Field-Programmable Gate Array), an ASIC (Application Specific Integrated Circuit), or a combination thereof.

[0043] The memory 112 is a main storage device (volatile) that stores the server program 11P, data, etc. For example, the server program 11P is loaded from the storage 113. The data includes data input to the server 11 and data generated by the processor 111. For example, the memory 112 is a RAM (Random Access Memory) or other volatile memory.

[0044] The storage 113 is a non-volatile auxiliary storage device that stores the server program 11P and data, etc. The storage 113 is, for example, a read-only memory (ROM), a hard disk drive, a flash memory, or other non-volatile storage device. The storage 113 may also be a removable storage device such as a memory card. As another example, the storage 113 may be an external storage device. With this configuration, for example, in a situation where multiple user terminals 20 are used, such as an amusement facility, it becomes possible to collectively update the server program 11P or data.

[0045] The input / output interface 114 is an interface that connects external devices such as a monitor, an input device (for example, a keyboard or a pointing device), an external storage device, a speaker, a camera, a microphone, and a sensor to the server 11.

[0046] The processor 111 also communicates with external devices via an input / output interface 114. The input / output interface 114 is, for example, a Universal Serial Bus (USB), a Digital Visual Interface (DVI), a High-Definition Multimedia Interface (HDMI (registered trademark)), a wireless terminal, or other terminals.

[0047] The communication interface 115 communicates with other devices (such as the user terminal 20) connected to the communication network 2. For example, the communication interface 115 is a wired communication interface such as a LAN (Local Area Network), or a wireless communication interface such as Wi-Fi (Wireless Fidelity), Bluetooth (registered trademark), or NFC (Near Field Communication).

[0048] However, the information processing device is not limited to the above hardware configuration. For example, the user terminal 20 may further include a sensor such as a camera. Various data acquired by the user terminal 20 using the sensor may be transmitted to the server 11.

[0049] [Examples of training model and trained model configurations] 6 is a network diagram showing an example of the configuration of an AI. The learning model A1 and the trained model A2 are, for example, AIs with a configuration shown in the following network.

[0050] Hereinafter, the learning model A1 and the trained model A2 will be described as being implemented on the server 11, i.e., on the cloud. However, part or all of the learning model A1 and the trained model A2 may be implemented on the user terminal 20, etc.

[0051] The network 300 has, for example, an input layer L1, an intermediate layer L2 (also called a "hidden layer"), and an output layer L3.

[0052] The input layer L1 is a layer that inputs data.

[0053] The intermediate layer L2 converts the data input at the input layer L1 based on weights (e.g., coefficients used for multiplication) and biases (e.g., adding a constant), etc. The results of this processing at the intermediate layer L2 are transmitted to the output layer L3.

[0054] The output layer L3 is a layer that outputs output contents and the like.

[0055] Then, through learning, weight coefficients (for example, coefficients for input characters or images are changed based on learning) and parameters changed through learning are optimized. Note that network 300 is not limited to the network structure shown in the figure. In other words, AI may be realized by other machine learning methods.

[0056] For example, the AI ​​may be configured to perform preprocessing such as dimensionality reduction (for example, a process of converting a relationship of three or more dimensions into a relationship that can be determined by simple calculations of three or less dimensions) using "unsupervised" machine learning. The relationship between input and output is preferably processed using simple calculations such as linear expressions. This type of calculation reduces calculation costs and enables the degree of deterioration to be determined with high accuracy.

[0057] In addition, the AI ​​may undergo processes such as dropout to reduce overfitting (also called "overfitting" or "over-fitting"). Other preprocessing such as dimensionality reduction and normalization may also be performed.

[0058] The AI ​​may have a network structure such as a CNN (Convolution Neural Network). In addition, for example, the network structure may have a configuration such as an LLM (Large Language Model), an RNN (Recurrent Neural Network), or an LSTM (Long Short-Term Memory). In other words, the AI ​​may have a network structure other than deep learning.

[0059] The AI ​​may also have hyperparameters. That is, the AI ​​may be configured such that some of its settings are configured by a user. Furthermore, the AI ​​may specify the features to be learned, or the user may set some or all of the features to be learned.

[0060] Furthermore, the learning model A1 and the trained model A2 may use other machine learning methods. For example, the learning model A1 and the trained model A2 may be unsupervised models that undergo preprocessing such as normalization. Furthermore, learning may be reinforcement learning (a learning method in which an AI makes a choice and is given an evaluation (reward) for the choice, resulting in a larger evaluation), etc.

[0061] In the learning, data expansion may be performed. That is, in order to increase the amount of learning data used in learning the learning model A1, preprocessing may be performed to expand one piece of experimental data or the like into multiple pieces of learning data. Increasing the amount of learning data in this way allows for further learning of the learning model A1.

[0062] Furthermore, the learning model A1 and the trained model A2 may be configured to perform transfer learning or fine tuning. That is, since the user terminal 20 often has a different execution environment for each device, the settings for each device may differ depending on the execution environment. For example, the basic configuration of the AI ​​is trained on a different information processing device. After that, each information processing device may be trained or configured additionally to further optimize it for its respective execution environment.

[0063] [Example of log data] When a game is played on the user terminal 20, the log data is generated in accordance with the progress of the game. Hereinafter, it is assumed that a play log is stored in the log data. The play log is a record indicating what actions a character controllable by the user 4 has taken in the virtual space. Note that the unknown data D2 may be generated based on an operation by the user 4 (for example, an operation to save the game), or may be automatically generated in the background by the user terminal 20 in accordance with the progress of the game.

[0064] Log data is data that indicates the progress of a game.

[0065] The following description will be given taking an example in which the eleventh data D11 in the pre-processing and the twenty-first data D21 in the execution processing are the first data.

[0066] The first data is data indicating the profile of a character appearing in the game. Alternatively, the first data is data indicating the profile of a user 4 who operates the game. For example, the first data is input by the user 4 when the game starts. However, the first data may be acquired from the user terminal 20 or another database, or a part or all of the profile may be determined randomly or by pre-setting in the game. Hereinafter, the profile is said to be fixed once it is determined, but the profile may change during the game.

[0067] Specifically, the first data includes setting items such as name, background, occupation, and friendships.

[0068] The name is the real name, abbreviation, pseudonym, etc. of the user 4. The name is also identification information such as a nickname set for the character.

[0069] The background is the user 4's career history or the game history set for the character.

[0070] The occupation is the occupation or work history of the user 4. The occupation is the occupation in the game that is set for the character.

[0071] A friendship is a relationship with another person who is involved or has been involved with the user 4 or character.

[0072] The second data is information about events that have occurred up until the time when advice is given in the game (hereinafter referred to as the "time of advice"), or data indicating the process up until the time of advice. For example, the second data is generated in the background while the user 4 is playing the game.

[0073] Specifically, the second data is image data (the image data is a still image or a video) that is a recording of a screen showing the play by user 4 (the screen may be from the viewpoint of user 4 or another viewpoint). In addition, the second data is process information such as the content of the event played by user 4, the play results, the score, the time taken, or other participants.

[0074] For example, if an event or a "battle" occurs during game play, the second data is data indicating the results of the event or the "battle," the operation details, the enemy characters encountered, and various images. Therefore, the second data is in the form of image data, text data, or other recorded data.

[0075] An event has a specific goal, conditions for participation, or a participation period in the game, and ends when the specific goal is achieved, the specific conditions are met, or a specific period has passed. Specifically, when an event occurs, depending on the period during which the event occurs or the actions taken within the event, an event-specific item may be acquired, an event-specific character may appear, or an event-specific benefit may be obtained. Events may also include "battles." Furthermore, when an event occurs, various events occur, and there are many scenes that are worth watching.

[0076] The third data is data indicating an output screen that has been output up until the time of the advice. For example, the third data is image data that has been recorded of an output screen that has been output when the user 4 plays. Note that the image data is not limited to recorded data.

[0077] The third data is image data showing the play process that has been output in the game up until the time of advice.

[0078] [Example of execution processing in RPG] Hereinafter, the type of game will be referred to as an RPG (role-playing game). Furthermore, when you save your progress in the game, the game will start from the point where you saved your progress.

[0079] In the following example, the output is made from the point where the game was last saved and resumed to the point where advice was given, but the point where the output corresponds can be set by the user 4, or it can be the start of the game, etc.

[0080] 7 is a diagram showing an example of input in Example 1. For example, when a user plays a game on a user terminal 20 with respect to a server 11 on which a trained model A2 generated by the pre-processing shown in FIG.

[0081] Furthermore, through pre-processing, i.e., learning using big data D4, the trained model A2 has learned game strategies and the like based on information on the Internet. Therefore, the trained model A2 is in a state where it can give advice on how to progress through the game.

[0082] For example, on the Internet, message boards or websites for the target game may contain walkthrough information. Additionally, video sites may provide videos of skilled gameplay, such as gameplay videos. For example, trained model A2 uses big data D4 as training data to learn, so it already understands how to play the game well.

[0083] The unknown data D2 is transmitted to the server 11, for example, when a so-called save point or the like is reached during game play. However, the unknown data D2 may not be transmitted all at once, and the constituent data may be divided and transmitted to the server 11 while the game is in progress.

[0084] In the first example, the unknown data D2 includes the process data D201 and the video data D202 and is transmitted to the server 11.

[0085] The process data D201 is data that records events, results of various actions, character movement, growth, parameter changes, etc. The process data D201 may be input by the user 4 (including cases where the user 4 inputs only a part of the data), or may be generated by AI based on the gameplay. The process data D201 may also be data in a format that is not readable by the user 4.

[0086] Additionally, it is desirable to receive an advice request command D5 from the user 4. For example, suppose a button for the user 4 to request advice (hereinafter referred to as an "advice button"; however, other types of GUI may be used) is placed on the screen.

[0087] In the following examples, the advice point is assumed to be the point at which the advice button is pressed. However, the advice point and the point at which the advice is output may be different. Specifically, depending on the type of game, the advice point, i.e., the point at which advice becomes available, may differ from the situation in which the advice is desired to be output. In other words, if advice is output immediately at the advice point, the output of the advice (for example, a GUI such as a text box) may be displayed on the screen and become a nuisance during the game progress, or user 4 may be too busy operating the game to have time to see the advice.

[0088] In this way, there are cases where user 4 wants to see the advice later, but wants to set the time point at which the advice is requested. In such cases, when the advice button is pressed, it is desirable that the advice be provided mainly around the time point at which the advice button is pressed on a dedicated screen for providing advice later. In this way, the advice time point may be one that user 4 can specify. And if user 4 can specify the advice time point, user 4 can view the advice at an appropriate timing.

[0089] It is also desirable that the user 4 be able to set whether or not the advice is displayed. Depending on the content of the advice, information indicating future game content may be displayed, which is known as a "spoiler." In other words, for the user 4 who is looking forward to the next development, it may be preferable that advice containing future content not be displayed. Therefore, being able to switch the advice display can prevent "spoilers" and make the game more enjoyable.

[0090] FIG. 8 is a diagram showing an example of video input in the first example. For example, the first video data D2021 is data recorded mainly of movement scenes in an RPG, as shown in FIG. 8. In this way, the log data may include data showing play in a format other than text. In this case, the video data D202 is subjected to image analysis to extract keywords, parameters, etc.

[0091] The log data may include data that is not directly visible to the user 4. For example, data used in the background, such as play time or the character's movement range, may be included as a profile. Other data such as the character's name, status, parameters, equipment, and participants may also be included in the log data.

[0092] 9 is a diagram showing a first output example in RPG. For example, when log data such as first video data D2021 is input, trained model A2 generates first output data D31 through execution processing. Then, based on the first output data D31, summary text D311, digest image D312, and advice D313 are output. In this way, output may be performed in various formats such as text, images, audio, and graphs.

[0093] FIG. 9 shows an example in which an output based on the first output data D31 is performed on a so-called "save screen," that is, a part of an operation screen for saving a game.

[0094] The summary text D311 is text that summarizes, in a "diary" format, the gameplay from the time the game was last saved to the time the game is next saved (i.e., the time the screen shown in FIG. 9 is opened). Specifically, the summary text D311 is generated based on the big data D4 in the same manner as the sentence structure of an actual diary or the like. Meanwhile, proper nouns and the like that appear in the text included in the summary text D311 are the names of specific characters that appear in the game. When such summary text D311 is output together with advice D313, the user 4 can grasp the game progress and the like.

[0095] The summary text D311 is text that explains events ("△△" is the name of the event) that occur during game play. The items explained in the summary text D311 are summaries of events that were participated in, opponents played against ("◆◆◆◆" is the name of a representative opponent), and incidents that occurred during game play ("□□□" is the name of a character that actually participated in the game).

[0096] The digest image D312 is an image showing a highlight scene in the play indicated by the summary text D311. That is, the digest image D312 shows the content of the summary text D311 in the form of an image. Such an image allows the user 4 to more easily understand the progress of the game, etc. The digest image D312 may be a still image or a video. Furthermore, the digest image D312 is preferably a few still images or a video of about several seconds.

[0097] For example, the digest image D312 is generated by extracting a portion from the video data D202. However, the digest image D312 may be generated using an image other than the video data D202. For example, the digest image D312 may be generated by extracting or processing an image from the big data D4 or the like.

[0098] The advice D313 analyzes the current state of play based on the log data and presents information useful for the subsequent progress of the game. For example, the advice D313 presents effective items and countermeasures such as character techniques. The advice D313 may also be based on an analysis of the trends of other players (data on other players is acquired and analyzed by the server 11), such as "There are many players heading north from here."

[0099] 10 is a diagram showing a second output example in an RPG. For example, the output of advice D313 does not have to be on the same screen as the screen where saving is performed. In other words, there may be a dedicated screen for outputting advice D313, rather than being part of the GUI used for other functions such as saving.

[0100] Fig. 10 is an example of a dedicated screen for viewing a summary and advice. For example, when user 4 performs an operation to open the dedicated screen, the screen shown in Fig. 10 is displayed. The time when such a dedicated screen is opened is the advice time. However, the advice time may be set separately, and this dedicated screen may output advice D313 corresponding to the advice time.

[0101] [Example of execution processing in a sports game] A second example of playing a golf game will be described below, but the sports game may be a sport other than golf, such as soccer, baseball, tennis, basketball, motor sports, winter sports, table games, fishing, or sumo.

[0102] 11 is a diagram showing an example of input in Example 2. For example, when a user plays a game on a user terminal 20 with respect to a server 11 on which a trained model A2 generated by the pre-processing shown in FIG. 2 is implemented, unknown data D2 is transmitted to the server 11.

[0103] Furthermore, through pre-processing, i.e., learning, the trained model A2 has learned game strategies and the like based on information on the Internet using big data D4. The learning may utilize the results of image analysis of video. Therefore, the trained model A2 knows what content should be included in advice D313 for progressing through the game.

[0104] 12 is a diagram showing a first input example in Example 2. For example, event information is input as log data. The event information is, for example, an event name D2011 or an event difficulty level D2012.

[0105] The event name D2011 is information that identifies an event described in a video or the like. Note that the event name is not limited to the event name D2011, and other identification information such as the time of the event may be used as long as it can identify the event. If such event identification information is available, it is possible to collect information mainly about similar events from the big data D4.

[0106] The event difficulty D2012 is information indicating the difficulty of conquering an event. In other words, the event difficulty D2012 makes it possible to collect information about events of similar difficulty levels. Specifically, the difficulty level is set in advance to be divided into four levels, such as "DIAMOND," "PLATINUM," "GOLD," and "SILVER." In this example, the highest level of difficulty is "DIAMOND." The difficulty levels are set in the order of "DIAMOND," "PLATINUM," "GOLD," and "SILVER," becoming easier in this order.

[0107] The difficulty levels are not limited to the above-mentioned divisions, and may be divided into less than four levels or five or more levels. The names of the difficulty levels may be other than those mentioned above.

[0108] For example, the difficulty level is set based on experience points, score (which may be the most recent score or average, etc.), level, or user 4 settings, and the character belongs to one of the stages based on predetermined criteria.

[0109] The event difficulty level D2012 may be estimated from the characteristics of the course, the participants, the character levels, and the like.

[0110] 13 is a diagram showing a second input example in Example 2. For example, the character operated by user 4 (hereinafter, information on the character operated by user 4 will be referred to as "character information D2013") and information on settings related to the character (hereinafter, referred to as "setting information D2014") are input as log data.

[0111] The character information D2013 includes, for example, the character's name, status, level, parameters, and other settings.

[0112] The setting information D2014 is, for example, items that a character can use. Specifically, in a golf game, the type of golf club that a character can use can be set. The setting information D2014 is the type of golf club that is selected. In addition to this, if there is external environment information or settings that affect the parameters of the character, these may be input as log data.

[0113] 14 is a diagram showing a third input example in Example 2. For example, the results of operations performed by User 4 are converted into video data D202 and input as log data.

[0114] In this example, the video data D202 is data recording output screens from before the club is swung, such as a first timing D2015, a second timing D2016, etc., from the club hitting the ball to the ball flying away. Furthermore, information such as flying distance may be further input as the individual results of this play. Other individual results of a play may include, for example, whether the timing of touching (including tapping) the screen was good or not (if "GREAT!" is displayed as shown in the figure, the evaluation result is that the timing was good).

[0115] 15 is a diagram showing a fourth input example in Example 2. For example, the course score D2017 for each course when the course is cleared is input.

[0116] The course results D2017 include the scores D2018 for each course. In addition, when the same course is played multiple times, such as a "best score," statistical values ​​may be generated by statistical processing that includes the results of the previous play.

[0117] The course results D2017 are not limited to the score D2018, but may be other numerical values, completion times, rankings, or the like.

[0118] When information indicating the results is entered, such as course results D2017, it can be determined whether the score is high, the ranking is good, or whether the player played well.

[0119] 16 is a diagram showing an example of output in Example 2. For example, the advice is output in text format. For example, the advice includes a cause explanation D321, differences D322, and points to note D323.

[0120] The cause explanation D321 is text that indicates the cause of poor performance. For example, the cause explanation D321 is the result of an analysis such as a comparison with the play of other players. It is particularly desirable to compare with players who are good at playing. For example, comparing with other players in the top 10% of performance may reveal areas for improvement.

[0121] It is desirable that the cause explanation D321 be output by narrowing it down to those that improve performance. For example, it is desirable that the cause explanation D321 be narrowed down to those that have a strong tendency to improve performance when advice based on learning is given. There are often multiple factors that can be compared with the play of other players. Therefore, if all the comparison results are listed in the cause explanation D321, the amount of information to be written is likely to become enormous. Also, there are cases where the cause explanation D321 includes things that have little to do with improving performance. Therefore, it is desirable that the cause explanation D321 be generated by learning the results of past advice, etc., and narrowing it down to those that are likely to improve performance.

[0122] The differences D322 are text that indicates differences in settings with other players, etc. In other words, if there are differences, such as when User 4 has different settings from other players when playing the same course, the differences D322 explain how they differ from other players.

[0123] As with the cause explanation D321, it is desirable that the difference D322 be output only if it is likely to improve grades. That is, in many cases, multiple types of difference D322 can be output. Therefore, it is desirable that the difference D322 be generated by learning the results of past advice, etc., and by narrowing it down to those that are likely to improve grades.

[0124] The cautions D323 are textual instructions that provide specific ways for the user 4 to improve their play. For example, the cautions D323 specifically explain that in order to select a good club, it is a good idea to refer to information such as distance and wind direction. It is also desirable to provide advice on other useful items or operation methods.

[0125] Also, the points to note D323 indicate how to improve the explanation of the cause D321 and the difference D322. Specifically, as shown in Fig. 16, the explanation of the cause D321 addresses the cause of "swinging the club one beat slow," while the points to note D323 clearly indicate how much faster the swing should be, with specific numerical values, and operation methods, etc.

[0126] The advice is not limited to text, but may be accompanied by a video or the like.

[0127] [Example of execution process in fighting games or competitive games] The following description will be given taking as an example a fighting action game in which characters mainly fight one-on-one.

[0128] 17 is a diagram showing an example of input in Example 3. For example, when a user plays a game on a user terminal 20 with respect to a server 11 on which a trained model A2 generated by the pre-processing shown in FIG. 2 is implemented, unknown data D2 is transmitted to the server 11.

[0129] In this example, the input data includes the settings that user 4 makes for the character before the match, and the results of operations performed during the match (including both operations by user 4 and operations by the opponent), which are input into the trained model A2 as unknown data D2.

[0130] Specifically, the unknown data D2 includes, for example, play data D211 and video data D202.

[0131] The play data D211 may be, for example, an operation history of the user 4 operating various buttons or operation sticks on a controller (so-called "command operations," such as when a certain command operation is performed to perform a so-called "special move"), the hit rate of each attack, etc. In the case of a game operated on a smartphone, the play data D211 may be, for example, an operation history of taps, flicks, etc. Therefore, the play data D211 differs depending on the type of device on which the game is played, the type of game, the interface, settings, etc.

[0132] In addition, the play data D211 may include parameters (which may include parameters that the user 4 cannot see or operate directly), settings (including settings related to the stage if they are affected by the stage on which the battle is held), etc.

[0133] Furthermore, the play data D211 includes opponent information (for example, the identification information, settings, and parameters of the battle opponent. If there is compatibility with the opponent, detailed information such as compatibility is included), and results, etc.

[0134] 18 shows an example of input of play data. For example, when the pre-match setting screen shown in the figure is input, character data D2111, setting data D2112, etc. are input.

[0135] The character data D2111 includes the name, parameters, status, etc. of the character to be used. The character data D2111 may be in the form of an image (which may be analyzed from the image) or in other parameter formats.

[0136] The setting data D2112 is, for example, settings for weapons equipped by a character, etc. The setting data D2112 indicates changes in the parameters of the character depending on the set weapon, etc. Details of the setting data D2112 may be obtained from a database, etc.

[0137] 19 shows an example of input of video data in Example 3. For example, an output screen during a match as shown in the figure is recorded and input as video data D202.

[0138] Specifically, as a result of image analysis of the video data D202 or by comparing it with the command operation history, opponent actions D2113, player actions D2114, and the like are acquired.

[0139] The opponent action D2113 and the player action D2114 may also indicate the results of the play, such as receiving damage or avoiding an attack as a result of the operation.

[0140] 20 is a diagram showing an example of output in Example 3. For example, on a screen after a match has ended, an output including advice is displayed in the following format. However, advice may be output at other times or on other screens.

[0141] For example, a reference image D331 and an image operation GUID 332 are displayed on the output screen. The reference image D331 is an image recorded from a match. When the image operation GUID 332 is operated, the time at which the reference image D331 is output changes.

[0142] For example, important points in giving advice, such as "first advice point D333" and "second advice point D334," are displayed on the time bar in the image operation GUID 332. Furthermore, when the first advice point D333 or the second advice point D334 is clicked, the reference image D331 outputs a scene that is important in giving advice. In this way, when points that can serve as advice are extracted, the user 4 can easily review their own operations in order to improve their game skills.

[0143] Additionally, an advice display D335 is output using images, text, etc. The advice display D335 shows, for example, the results of an analysis of the causes of defeat and countermeasures, etc. Specifically, the advice display D335 shows at what point in time the most damage was received, or what countermeasures can be taken to reduce the damage, etc.

[0144] The advice display D335 and the reference image D331, etc. may be linked. Therefore, when the reference image D331 is switched by operating the image operation GUID 332, the advice display D335 corresponding to the reference image D331 may be switched. In this way, when countermeasures, etc. are output in conjunction with the user 4's own playing results, it is easy for the user 4 to understand which points need improvement.

[0145] [Overall processing example] 21 is a diagram showing an example of overall processing. In the following example, the overall processing is performed successively with pre-processing and execution processing. Specifically, the pre-processing is step S01. The execution processing is steps S02 to S04. However, the overall processing may include other processes.

[0146] In step S01, the server 11 inputs learning data D1 including log data and correct answer data to train the learning model A1. Then, when step S01 is performed, a trained model A2 is generated. In this way, when the learning model A1 is trained to become the trained model A2, an execution process is performed using the trained model A2.

[0147] In step S02, the server 11 inputs unknown data D2. For example, step S03 is executed in the background in parallel with the progress of the game, i.e., the unknown data D2 is transmitted from the user terminal 20 to the server 11 without the user 4 being aware of it. Note that the unknown data D2 may include data generated in the server 11.

[0148] In step S03, the server 11 determines whether it is time to give advice. Next, if it is time to give advice (YES in step S03), the server 11 proceeds to step S04. On the other hand, if it is not time to give advice (NO in step S03), the server 11 proceeds to step S02. That is, step S04 and subsequent steps are executed in response to an operation such as requesting advice.

[0149] In step S04, the server 11 generates output data D3. For example, the timing for generating the output data D3, that is, the timing for executing step S04, is set in advance.

[0150] In step S05, the server 11 performs output based on the output data D3. For example, the timing of output or the screen to be output, i.e., the timing and target for executing step S05, are set in advance.

[0151] [Example of functional configuration] 22 is a diagram illustrating an example of a functional configuration. For example, the system 1 is an advice output system including a learning device 31 and an execution device 32.

[0152] The learning device 31 includes a learning data input means 1F1 and a learning means 1F2.

[0153] The learning data input means 1F1 performs a learning data input procedure for inputting the learning data D1 including the log data and the correct answer data D20. For example, the learning data input means 1F1 is realized by the communication interface 115 or the like.

[0154] The learning means 1F2 performs a learning procedure in which the learning model A1 is trained using the training data D1 to generate a trained model A2. For example, the learning means 1F2 is realized by the processor 111 or the like.

[0155] The execution device 32 includes a storage means 1F10 and a generation means 1F4. It is preferable that the execution device 32 also includes an unknown data input means 1F3 and an output means 1F5. The storage means 1F10 may be included in the learning device 31. Alternatively, the storage means 1F10 may be shared by both the learning device 31 and the execution device 32.

[0156] The unknown data input means 1F3 performs an unknown data input procedure for inputting unknown data D2 including unknown log data to the trained model A2 generated by the training means 1F2. For example, the unknown data input means 1F3 is realized by the communication interface 115 or the like.

[0157] The generating means 1F4 performs a generating procedure for generating output data D3 indicating advice on the play content related to the play log when a new play log is stored based on the trained model A2. For example, the generating means 1F4 is realized by the processor 111 or the like.

[0158] Based on the output data D3, the output means 1F5 performs an output procedure to output to the user terminal 20. For example, the output means 1F5 is realized by the communication interface 115 or the like.

[0159] The storage means 1F10 performs a storage procedure for storing, as a play log, the actions of the user-controllable character in the virtual space, etc. For example, the storage means 1F10 is realized by the storage 113 or the like.

[0160] The learning device 31 and the execution device 32 are, for example, the server 11. However, the learning device 31 and the execution device 32 may be different information processing devices.

[0161] With the above configuration, advice is output to the user 4 as the game progresses. For example, the advice may be a solution or an analysis of the reasons why something is not going well, and the advice may be presented after collecting information. However, the user 4 may be able to set whether to turn the advice on or off.

[0162] When such advice is output, User 4 can enjoy the game by receiving advice that is tailored to the specific playing results and situation of User 4. In other words, the advice is not a set phrase, but is given flexibly to suit User 4.

[0163] Advice can also be output for different types of games, such as RPGs. In this way, versatile advice can be output. It is desirable that the advice be different each time it is output. In other words, multiple pieces of advice can be generated and output randomly or in order each time a request is made.

[0164] The type of game is not limited to the above. As long as advice is output during the progress of the game, the type of game is not limited. For example, the type of game may include sports, action, puzzle, fighting, etc.

[0165] [Variations] The unknown data D2 may be preprocessed. The preprocessing may include limiting the unknown data D2. For example, the preprocessing may be performed by narrowing down the video data D202, which is the third data input as the unknown data D2, to data from important points in time. In particular, the video data D202 tends to have a large data volume if it is long. Therefore, narrowing down the video data D202 can reduce the data volume.

[0166] For example, suppose that the unknown data D2 includes all output screens from the start point to the advice point. Therefore, the preprocessing is a process of excluding data from a predetermined time before the advice point (for example, 10 minutes) in order to narrow the unknown data D2 down to the most recent data. In this way, by performing preprocessing to narrow the unknown data D2 down to the most recent data, it is possible to output data that is mainly based on new information.

[0167] Additionally, when extracting highlights, preprocessing may be performed to narrow down the unknown data D2 to a time when the profile changed suddenly or when the character was in a pinch (for example, 10 minutes before and after the specified time). When preprocessing is performed in this manner, the amount of data to be processed is reduced, thereby speeding up the execution process.

[0168] For example, when so-called "hit points (HP)" suddenly decrease, it is often the case that the character is in a pinch. Also, when so-called "battles" are long, it is often the case that the character is in a pinch. If such times can be searched for using log data, etc., it is possible to identify the times when the character is in a pinch.

[0169] The point in time when the profile suddenly changes is often when User 4 makes an effort to temporarily strengthen the parameters of the character. After such a point in time, the strengthened character often becomes a highlight. If such a point in time can be searched for using log data, the point in time when the character becomes active can be identified.

[0170] In this way, it is desirable to perform preprocessing so that not all of the unknown data D2 is input to the trained model A2, but rather carefully selected data is input to the trained model A2.

[0171] [Other embodiments] The virtual space is not limited to games. For example, the virtual space may be a metaverse. The metaverse is a combination of the words "meta" (transcendence) and "universe" (space, world). The metaverse refers to a three-dimensional virtual space on a computer network in which multiple people can participate and in which participants can act freely. Therefore, the character that the user 4 can control may be an avatar in the metaverse space.

[0172] In the above example, the information processing device performs both pre-processing for the learning model and execution processing using the learned model. However, the pre-processing and execution processing do not have to be performed by the same information processing device. Furthermore, the pre-processing and execution processing do not have to be consistently performed by a single information processing device. In other words, each process and data storage may be performed by an information system or the like composed of multiple information processing devices.

[0173] [About the "Diary"] The "journal" may have any name, medium, format, or information structure as long as it records gameplay. In other words, within the game, the "journal" may be operated or output using various GUIs, etc.

[0174] On the other hand, when generating a "diary" in text format, diaries, journals, blogs, reports, comments, or articles that contain information other than the game may be used as reference for learning. In other words, the learning data may include data other than what is called a "diary."

[0175] The learning process may be additionally performed after the execution process or before the execution process.

[0176] The above-mentioned processing may be performed by an information processing device other than the server 11 and the user terminal 20 in an auxiliary manner.

[0177] Fig. 23 is a diagram showing an example of a configuration using an auxiliary device. Compared to the example shown in Fig. 1, the configuration shown in Fig. 23 differs in that an auxiliary device 60 is added. Note that the auxiliary device 60 may be a configuration that is used temporarily.

[0178] The auxiliary device 60 is an information processing device installed near the user terminal 20 (in this example, it is installed near the user terminal 20A, but it may be installed near another device.) The auxiliary device 60 executes a part or all of a specific process on behalf of the user terminal 20 or the server 11.

[0179] For example, the auxiliary device 60 may be equipped with a device specialized for graphic processing and perform graphic processing at high speed. In this way, so-called edge computing may be performed by installing the auxiliary device 60 or the like. In this way, the above-described processing may be performed by utilizing the hardware resources of various information processing devices. Therefore, the above-described processing may be performed by an information processing device different from the above-described one.

[0180] The above-described processes and data used in the processes executed in this embodiment may be executed and stored by an information processing system. For example, the information processing system may execute or store data on multiple information processing devices to achieve redundant, distributed, parallel, or a combination thereof. Therefore, the present invention may be realized in devices with hardware configurations other than those described above and in systems other than those described above.

[0181] Furthermore, the program according to the present invention is not limited to a single program, but may be a collection of multiple programs. Furthermore, the program according to the present invention is not limited to being executed by a single device, but may be executed by multiple information processing devices in a shared manner. Furthermore, the allocation of roles among the information processing devices is not limited to the above-mentioned example. In other words, some or all of the above-mentioned processes may be executed by information processing devices different from the above-mentioned information processing device.

[0182] Furthermore, some or all of the means implemented by the program can be realized by hardware such as an integrated circuit. Furthermore, the program may be provided by being recorded on a non-transitory recording medium readable by a computer. Examples of the recording medium include a hard disk, an SD card (registered trademark), an optical disk such as a DVD, or a server on the Internet. Therefore, the program may be distributed via a telecommunications line such as the Internet.

[0183] Furthermore, the information processing devices that make up the information processing system may be located overseas.

[0184] The present invention is not limited to the above-described exemplary embodiments. Therefore, the present invention allows for the addition or modification of components within the scope of the technical gist. Therefore, all technical matters included in the technical concept described in the claims are subject to the present invention. The above-described exemplary embodiments are preferred specific examples. Furthermore, a person skilled in the art can realize various modifications from the disclosed content, and such modifications are included in the technical scope described in the claims. [Explanation of symbols]

[0185] 1: System 1F1: Learning data input means 1F2: Learning methods 1F3: Unknown data input method 1F4: Generation means 1F5: Output method 1F10: Storage means 3:Administrator 4: User 5:Administrator 11: Server 20: User terminal 31: Learning device 32: Execution device 60: Auxiliary equipment D1: Training data D2: Unknown data D20: Correct data D4: Big Data A1: Learning model A2: Pre-trained model

Claims

1. Computer, a storage means for storing actions of a user-controllable character in a virtual space as a play log; and functioning as a generating means for generating output data indicating advice on the play content related to the play log when the play log is newly stored, based on a trained model trained based on learning data including at least big data including strategy information on the Internet and the play log as input data, and correct answer data in which advice on the play content related to the play log is output data; The advice is: A solution at the time of advice request is displayed in text and an image corresponding to the advice; The trained model is Further learning the correlation between the strategy information and the advice based on the big data; The output data is generated so that the advice includes the strategy information. program.

2. The log data indicating the play log includes: First data indicating a parameter in a game or an operation of a user on the game; and second data indicating an output screen that has been output up until the advice request time. The program according to claim 1.

3. a storage means for storing actions of a user-controllable character in a virtual space as a play log; a generation means for generating output data indicating advice on the play content related to the play log when the play log is newly stored, based on a trained model trained based on learning data including at least big data including strategy information on the Internet and the play log as input data, and including correct answer data in which advice on the play content related to the play log is output data; The advice is: A solution at the time of advice request is displayed in text and an image corresponding to the advice; The trained model is Further learning the correlation between the strategy information and the advice based on the big data; The output data is generated so that the advice includes the strategy information. system.

Citation Information

Patent Citations

  • Game device and information storage medium

    JP2002028370A

  • Game system having advising function

    JP2006141665A

  • Information processing method, information processing device, and program

    WO2021049254A1