Game system, program, learning device and method

JP2025178347A5Pending Publication Date: 2026-02-03BANDAI NAMCO ENTERTAINMENT INC
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
JP2025154449
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2025-09-17
Publication Date
2026-02-03

AI Technical Summary

Technical Problem

Existing game systems face inefficiencies in learning the behavior of a second character in a multi-character battle game, where the actions of a first character controlled by a player are not effectively utilized to infer and control the actions of a second character controlled by a computer, lacking accuracy and efficiency in learning processes.

Method used

A game system that includes a learning unit to learn the actions of a first character, a behavior control unit to control the second character using learned data, and a setting unit to set the combination, learning frequency, and weight of related information based on player input, allowing for efficient learning and control of the second character's behavior.

Benefits of technology

Enables efficient learning and control of a second character's behavior in a fighting game by setting the combination, learning frequency, and weight of related information based on player input, enhancing the accuracy and efficiency of the learning process.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 00000000_0000_ABST
    Figure 00000000_0000_ABST
Patent Text Reader

Abstract

To provide, e.g., a game system that enables efficient learning in a match game in which training data obtained by learning based on the behavior of a first character and relevant information related to the behavior is used to control the behavior of a second character.SOLUTION: The game system learns the behavior of the first character and the relevant information related to the behavior. At least one of a combination of a plurality of items which constitute the relevant information, a learning frequency, and respective weights of the plurality of items which constitute the related information is set, on the basis of information on a player, before the learning.SELECTED DRAWING: Figure 3
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to a game system, a program, a learning device, and a game providing method. Regarding. [Background technology]

[0002] BACKGROUND ART Conventionally, there have been known games in which a first character and a second character perform offensive or defensive actions in a fighting match in a virtual three-dimensional space.

[0003] Recently, there have been game systems that utilize learning models generated by analyzing and learning data.

[0004] For example, in the prior art disclosed in Patent Document 1, operation data related to the techniques used by a character in response to operation of an input operation unit and screen state data related to screen display are collected at predetermined intervals and written into a learning data storage unit, and deep learning calculation processing is performed based on the operation data and the screen state data, thereby optimizing the weights of the learning results.When a first character operated by a player and a second character controlled by a computer battle each other, key data of the inference result is obtained for the second character and added to the key history, and an action (or technique) is determined by referring to the key history and a command table (see paragraphs 0061-0062, 0077-0079, and FIG. 9 of Patent Document 1). [Prior art documents] [Patent documents]

[0005] [Patent Document 1] Japanese Patent Application Publication No. 2019-195512 Summary of the Invention [Problem to be solved by the invention]

[0006] In a multi-character battle game, the behavior of a first character controlled by a player and related information relating to that behavior may be learned, and the behavior of a second character may be inferred using the learned learning data. In such learning, it is preferable to improve efficiency and accuracy.

[0007] The present invention has been made in consideration of the above-mentioned problems, and aims to provide a game system etc. that enables efficient learning in a competitive game in which the actions of a second character are controlled using learned learning data based on the actions of a first character and related information relating to said actions. [Means for solving the problem]

[0008] (1) The present invention provides A game system for controlling the behavior of a second character in a fighting game in which a first character whose behavior is controlled based on a player's operation input competes against a second character controlled by a computer, the game system comprising: a learning unit that learns the actions of the first character and related information related to the actions; a behavior control unit that controls the behavior of a second character using the learning data learned by the learning unit; and a setting unit that sets, based on the player's information, at least one of the combination of the multiple items that make up the related information, the learning frequency, and the weight of each of the multiple items that make up the related information before learning.

[0009] The present invention also relates to a learning device (terminal device, game device) including each of the above units. The present invention also relates to a server device including each of the above units. The present invention also relates to a program that causes a computer to function as each of the above units. The present invention also relates to a computer-readable information storage medium that stores a program that causes a computer to function as each of the above units.

[0010] The present invention also relates to a game providing method for providing information about a game from a server device that controls the behavior of a second character to a terminal device of a player in a fighting game in which a first character, whose behavior is controlled based on a player's operation input, competes against a second character controlled by a computer, the game providing method comprising transmitting information about the player's operation input received by the terminal device to the server device, and the server device including the above-mentioned units.

[0011] According to the present invention, at least one of the combination of multiple items that make up the related information, the learning frequency, and the weight of each of the multiple items that make up the related information is set based on the player's information before learning, allowing for efficient learning from an early stage.

[0012] "Learning" may refer to, for example, machine learning. "Learning" may also refer to accumulating (storing) information.

[0013] The "learning data" may be, for example, the learned data itself, or a learning model generated by machine learning.

[0014] (2) The present invention is A game system for controlling the behavior of a second character in a fighting game in which a first character whose behavior is controlled based on a player's operation input competes against a second character controlled by a computer, the game system comprising: a learning unit that learns the actions of the first character and related information related to the actions; a behavior control unit that controls the behavior of a second character using the learning data learned by the learning unit; and a setting unit that sets at least one of the combination of the multiple items that make up the related information, the learning frequency, and the weight of each of the multiple items that make up the related information, based on the player's information and in accordance with the game progress.

[0015] The present invention also relates to a learning device (terminal device, game device) including each of the above units. The present invention also relates to a server device including each of the above units. The present invention also relates to a program that causes a computer to function as each of the above units. The present invention also relates to a computer-readable information storage medium that stores a program that causes a computer to function as each of the above units.

[0016] The present invention also relates to a game providing method for providing information about a game from a server device that controls the behavior of a second character to a terminal device of a player in a fighting game in which a first character, whose behavior is controlled based on a player's operation input, competes against a second character controlled by a computer, the game providing method comprising transmitting information about the player's operation input received by the terminal device to the server device, and the server device including the above-mentioned units.

[0017] According to the present invention, related information is constructed according to the game progress status based on the player's information. At least one of the combination of multiple items that make up the related information, the learning frequency, and the weight of each of the multiple items that make up the related information is set, so that learning can be done efficiently in real time.

[0018] (3) Furthermore, in the game system, learning device, server device, program, information storage medium, and game providing method according to the present invention, The setting unit The present invention may be configured to accept a selection of a high-weighted item from among a plurality of items constituting the related information based on an operation input by the player. According to the present invention, since the player can select a high-weighted item, it is possible to set a high-weighted item with emphasis on the player's intention.

[0019] (4) Furthermore, in the game system, learning device, server device, program, information storage medium, and game providing method according to the present invention, The setting unit The priority of each of the plurality of items of the related information may be set based on the operation input of the player. According to the present invention, the player can set the priority of each of the plurality of items, so that the player can set the priority of each of the plurality of items while respecting the player's will.

[0020] (5) Furthermore, in the game system, learning device, server device, program, information storage medium, and game providing method according to the present invention, The player information may include information about the player's play history. According to the present invention, it is possible to set weights taking into account the player's play history.

[0021] (6) Furthermore, in the game system, learning device, server device, program, information storage medium, and game providing method according to the present invention, The player information may include information relating to the player's past playing tendencies. According to the present invention, weights can be set taking into account the player's past playing tendencies.

[0022] (7) Furthermore, in the game system, learning device, server device, program, information storage medium, and game providing method according to the present invention, The information about the player may include information about other players that is determined based on predetermined information about the player. According to the present invention, weights can be set taking into consideration information about other players that is determined based on predetermined information about the player (e.g., level). [Brief explanation of the drawings]

[0023] [Figure 1] FIG. 1 is a diagram showing an example of the configuration of a game system according to an embodiment of the present invention. [Figure 2] FIG. 2 is a diagram showing functional blocks of a server device according to the embodiment. [Figure 3] FIG. 2 is a diagram showing functional blocks of the terminal device according to the embodiment. [Figure 4] FIG. 2 is a diagram showing an example of a controller according to the present embodiment. [Figure 5]FIG. 4 is a diagram showing an example of a game screen according to the present embodiment. [Figure 6] FIG. 2 is an explanatory diagram of behavior and related information according to the present embodiment. [Figure 7] FIG. 2 is an explanatory diagram for searching for related information according to the present embodiment. [Figure 8] FIG. 10 is a diagram showing an example of a command associated with an action according to the present embodiment. [Figure 9] FIG. 4 is an explanatory diagram of acquisition of behavioral information and related information according to the present embodiment. [Figure 10] FIG. 4 is a diagram for explaining related information according to the present embodiment. [Figure 11] FIG. 4 is a diagram for explaining a predetermined period of time according to the present embodiment. [Figure 12] FIG. 6 is a diagram for explaining a setting screen for a predetermined period according to the embodiment. [Figure 13] FIG. 10 is a diagram for explaining a continuous action according to the present embodiment. [Figure 14] FIG. 4 is a diagram showing an example of a weight setting screen according to the present embodiment. [Figure 15] FIG. 4 is a diagram showing an example of a weight setting screen according to the present embodiment. [Figure 16] FIG. 4 is a diagram showing an example of a weight setting screen according to the present embodiment. [Figure 17A] 1 is a flowchart showing an example of a processing flow according to an embodiment of the present invention. [Figure 17B] 1 is a flowchart showing an example of a processing flow according to an embodiment of the present invention. DETAILED DESCRIPTION OF THE INVENTION

[0024] The present embodiment will be described below. Note that the present embodiment described below does not unduly limit the content of the present invention described in the claims. Furthermore, not all of the configurations described in the present embodiment are necessarily essential constituent elements of the present invention.

[0025] [1] Game System First, the outline and general configuration of the game system of this embodiment will be described with reference to Fig. 1. Fig. 1 is a diagram showing an example of the system configuration showing the configuration of the game system of this embodiment.

[0026] The server device 10 is an information processing device capable of providing a given service using a terminal device (game device) 20 connected for communication via the Internet (an example of a network).

[0027] The terminal device 20 is an information processing device such as a home video game machine, a personal computer (also called a PC), a smartphone, a mobile phone, a PHS, a computer, a PDA, a portable game machine, an image generating device, an arcade game machine, a cabinet, etc., and is a device that can be connected to the server device 10 via a network such as the Internet (WAN) or a LAN. An input unit 260 and a display unit 290 are connected to the terminal device 20.

[0028] The terminal device 20 of this embodiment has a learning function (for example, a learning function based on machine learning). The terminal device 20 may also be referred to as a learning device. The terminal device 20 also has an inference function (prediction function) based on machine learning. The terminal device 20 may also be referred to as an inference device (prediction device).

[0029] [1.1] Game system based on a client-server model As shown in FIG. 1, the game system of this embodiment is configured such that a server device 10 and terminal devices 20 (for example, terminal devices 20A, 20B, and 20C) are connectable to the Internet (an example of a network).

[0030] By accessing the server device 10 from the terminal device 20, the player can play the game based on information transmitted from the server device 10 via the Internet.

[0031] In particular, in this embodiment, information about the game is provided from a server device 10 that executes a game in which a first character and a second character battle each other to a player's terminal device 20. Information about the player's operation input accepted by the terminal device 20 is transmitted to the server device 10. Information about the game is transmitted from the server device 10 to the terminal device 20.

[0032] In this embodiment, each game may be provided to the terminal device 20 by one server device 10, or a server system may be constructed by linking a plurality of server devices 10, and each game may be provided to the terminal device 20.

[0033] It should be noted that the various processes relating to the present invention may be performed only by the server device 10, or may be performed only by the terminal device 20.

[0034] [1.2] Terminal equipment The game system of this embodiment may be realized by a single terminal device having the functions of the server device 10, that is, a device (standalone) that operates independently without relying on other devices such as a server device.

[0035] Furthermore, in this embodiment, the present invention may be realized by the terminal device 20 alone, without being connected to the server device 10. For example, the present invention may be realized by a game system realized by a plurality of terminal devices 20 through P2P (peer-to-peer) communication.

[0036] A plurality of such terminal devices may be connected by wire or wirelessly, and one terminal device may function as a host (server device 10), and the system may be realized by the plurality of terminal devices.

[0037] The terminal device is not limited to a terminal device, but may be a tablet information terminal device, a personal computer, or a terminal device (casing) installed in an amusement park.

[0038] [1.3] Cloud-based game system The game system of this embodiment may also be a cloud-based game system. For example, in a cloud-based game system, basic processing (including game processing, drawing processing, etc.) is performed solely by the server device 10 (cloud device), and the terminal device 20 only controls the display of the processing results of the server device 10 (cloud device). The terminal device 20 also transmits information such as operation input (operation information, input information) from the controller to the server device 10. In this case, the terminal device 20 may also transmit information other than the operation input.

[0039] Furthermore, in this embodiment, except for input, each function of the processing unit 200 of the terminal device 20 and the execution of the game program may be executed by the server device 10, and the terminal device 20 may realize the above game by executing input and image display by streaming.

[0040] Furthermore, the game system may store the information stored in the server device 10 and the information stored in the terminal device 20 in a given storage area on the Internet.

[0041] [1.4] Terminal device with multiple controllers In this embodiment, one terminal device 20 may be equipped with multiple controllers (input units 260). When multiple players play a game using their own controllers on one terminal device 20, it is assumed that the multiple players are actually close to each other.

[0042] [1.5] Examples of social games In this embodiment, the SNS server may function as an SNS server that provides a communication-type service. Here, the SNS server may be an information processing device that provides a service that allows communication between multiple players.

[0043] Furthermore, in this embodiment, for example, when functioning as an SNS server, it is possible to provide a game called a social game that is executed using the operating environment (API (Application Programming Interface), platform, etc.) of the SNS that is provided.

[0044] Social games differ from existing online games in that they require a dedicated client. This includes games that do not require software and can be played with just a web browser and an SNS account. In addition, this embodiment has a configuration that allows for the provision of an online game in which players can connect to other players' terminal devices 20 via a network and share the same game progress simultaneously online.

[0045] [1.6] Example of a browser game In particular, in this embodiment, games may be provided on the web browser of the terminal device 20, such as browser games (games that can be launched simply by opening the installation site in the web browser) created in various languages, such as HTML, FLASH (registered trademark), CGI, PHP, shockwave, Java (registered trademark) applet, and JavaScript (registered trademark).

[0046] The terminal device 20 also has a web browser capable of viewing web pages (data in HTML format). That is, the terminal device 20 has a communication control function for communicating with the server device 10, a display control function using data received from the server device 10 (web data, data created in HTML format, etc.), and a web browser function for transmitting player operation data to the server device 10, and is configured to execute various processes for providing a screen to the player and allowing the player to play the game. However, the terminal device 20 may also acquire game control information provided from the server device 10, execute predetermined game processing, and play a game based on the game processing.

[0047] Specifically, when the terminal device 20 makes a request to the server device 10 to play a predetermined game, the terminal device 20 is connected to the game site of the server device 10 and the game starts. In particular, the terminal device 20 may be configured to use an API as necessary to cause the server device 10 functioning as an SNS server to perform predetermined processing, or to obtain player information and the like managed by the server device 10 functioning as an SNS server, and then execute the game.

[0048] [1.7] Other In this embodiment, the server device 10 may be configured with one (device, processor) or multiple (devices, processors). Information (e.g., player information, game information, etc.) stored in the storage area (storage unit 170 described later) of the server device 10 may be stored in a database (broadly speaking, a storage device, a memory) connected via a network (an intranet or the Internet). The communication line between the terminal device 20 and the server device 10 may be wired or wireless.

[0049] [2] Server device Next, the server device 10 of this embodiment will be described with reference to Fig. 2. Fig. 2 is a diagram showing functional blocks of the server device 10 of this embodiment. In this embodiment, some of the components (each unit) of Fig. 2 may be omitted.

[0050] In this embodiment, the system includes an input unit 160 for use in input by the administrator and others, an information storage medium 180 in which predetermined information is stored, a communication unit 196 for communicating with the terminal device 20 and others, a processing unit 100 that mainly executes processing related to the game to be provided, and a memory unit 170 that mainly stores various data used in the game.

[0051] The input unit 160 is used by a system administrator or the like to input game-related settings and other necessary settings and data. For example, the input unit 160 in this embodiment is configured with a mouse, keyboard, and the like.

[0052] The information storage medium 180 (computer-readable medium) stores programs and data. It stores data and other information, and its functions are realized by optical disks (CD, DVD), magneto-optical disks (MO), magnetic disks, hard disks, magnetic tapes, or memories (ROM).

[0053] The communication unit 196 performs various controls for communicating with the outside (e.g., terminals, other servers, or other network systems), and its functions are configured by hardware such as various processors or communication ASICs, programs, etc.

[0054] The storage unit 170 serves as a work area for the processing unit 100, the communication unit 196, etc., and its functions are realized by RAM (VRAM), etc. The information stored in the storage unit 170 may be managed by a database.

[0055] In addition to the main memory unit 171, the memory unit 170 of this embodiment also has a game information memory unit 174 in which game information indicating information related to the game is stored, and a player information memory unit (user information memory unit) 176.

[0056] In particular, the game information storage unit 174 stores information about the virtual space (game field) in which the game is played, information about the virtual camera, setting values ​​used in the game, and the like.

[0057] Furthermore, player information (user information) is stored in association with a player ID (user ID) for each player (each user) in the player information storage unit 176. The player ID is identification information for identifying a player.

[0058] The processing unit 100 performs various processes using a main memory unit 171 in the memory unit 170 as a work area. The functions of the processing unit 100 can be realized by hardware such as various processors (CPU, DSP, etc.) and ASICs (gate arrays, etc.), or by programs.

[0059] The processing unit 100 performs various processes of this embodiment based on programs (data) stored in the information storage medium 180. That is, the information storage medium 180 stores programs for causing a computer to function as each unit of this embodiment (programs for causing a computer to execute the processing of each unit).

[0060] For example, the processing unit 100 (processor) controls the entire server device 10 based on a program stored in the information storage medium 180, and performs various processes such as controlling the transfer of data between the various units. Furthermore, the processing unit 100 performs processes to provide various services in response to requests from the terminal device 20.

[0061] In this embodiment, the server device 10 may perform part or all of the processing of the processing unit 100, or the terminal device 20 may perform part of the processing of the processing unit 100.

[0062] The processing unit 100 includes a game processing unit 111 , a display control unit 112 , a reception unit 119 , a communication control unit 120 , a Web processing unit 121 , a management unit 122 , and a notification unit 123 .

[0063] The game processing unit 111 performs various controls for providing the game of this embodiment (for example, a fighting game). For example, the processing unit 100 works in conjunction with the terminal device 20, and executes game processing of the game provided in this embodiment for each player based on input from the player input via the terminal device 20.

[0064] The processing unit 100 may also have a timer function, which may be used to manage the progress of the game and synchronize with each terminal device 20. In particular, the processing unit 100 may be used to manage the current time and a preset time. The time may be output to each unit.

[0065] The game processing unit 111 executes game processing based on the operation input (operation information) of the player. For example, the game processing unit 111 may receive the operation input (operation information) of the player from the player's terminal device 20 and execute game processing. In addition, during online battles, the game processing unit 111 executes matching processes with each player, etc.

[0066] The display control unit 112 controls the display unit 290 of the terminal device 20 to display a screen (image) generated by the server device 10 according to the game situation. In other words, the display destination of the screen (image) generated by the server device 10 is the display unit 290 of the terminal device 20.

[0067] The display control unit 112 controls the display of screens (game images, effect images) displayed on the terminal device 20 of each player.

[0068] The receiving unit 119 may receive information related to the game. For example, the receiving unit 119 may receive and accept the content of an operation input from the terminal device 20.

[0069] The receiving unit 119 may also receive player inputs, information about the game, and the like, through data transmission and reception by the communication control unit 120.

[0070] The communication control unit 120 establishes a connection (session or connection) with the terminal device 20 and performs processing to communicate (transmit and receive) data via the network.

[0071] For example, the communication control unit 120 transmits information about the game to the player's terminal device 20. The communication control unit 120 also receives, from the player's terminal device 20, player operation information accepted by the terminal device 20. The communication control unit 120 also transmits information about the game to the terminal device 20.

[0072] The Web processing unit 121 functions as a Web server. For example, the Web processing unit 121 performs a process of transmitting data in response to a request from a Web browser installed in the terminal device 20, and a process of receiving data transmitted by the Web browser of the terminal device 20, via a communication protocol such as HTTP (Hypertext Transfer Protocol).

[0073] The management unit 122 manages game information and player information associated with player identification information for each player.

[0074] Furthermore, the notification unit 123 notifies the player of given information. Note that "notifying" means notifying the player (player's terminal device 20) of information. Note that "notifying" may be interpreted as providing, presenting, displaying, or transmitting.

[0075] The notification unit 123 may perform transmission control so as to notify the screen on the terminal device 20. That is, the notification unit 123 generates display control information for the screen (image) and controls the generated display control information to be displayed on the terminal device 20 of the player (for example, the display unit 290 of the terminal device 20).

[0076] The server device 10 may have all or part of the functions of the terminal device 20 described below.

[0077] [3] Terminal device Next, the terminal device 20 of this embodiment will be described with reference to Fig. 3. Fig. 3 is an example of a functional block diagram showing the configuration of the terminal device 20 of this embodiment. Furthermore, the terminal device 20 of this embodiment may have a configuration in which some of the components (units) of Fig. 3 are omitted.

[0078] The information storage medium 280 (computer-readable medium) stores programs, data, etc., and its functions can be realized by an optical disk (CD, DVD), a magneto-optical disk (MO), a magnetic disk, a hard disk, a magnetic tape, or a memory (ROM), etc.

[0079] The input unit 260 includes buttons and levers that can input operation inputs (operation signals). Fig. 4 is an external view of a controller 30, which is an example of the input unit 260. The controller 30 may be the same as the controller used in arcade games at game centers.

[0080] The terminal device 20 executes the fighting game based on the game program or game information read from the memory unit 270 or the information storage medium 280, or operation inputs input from the controller 30, so that the player can enjoy the fighting game while viewing the game screen displayed on the display unit 290.

[0081] The controller 30 is equipped with a cross-shaped directional switch 31 having four pressing points, and four push buttons 33 (33a to 33d) arranged in a cross shape (four directions: up, down, left, and right).

[0082] The controller 30 also has an analog joystick (hereinafter abbreviated as "joystick") 32 and a joystick 34 attached thereto so as to be able to tilt freely.

[0083] The direction switch 31, joystick 32, push button 33, and joystick 34 are used to instruct the character's movement direction or to specify the type of technique. Specifically, the direction switch 31 has four push points in the up, down, left, and right directions, and pressing any of the push points in the up, down, left, and right directions inputs to instruct either the up, down, left, or right direction. The joystick 32 and joystick 34 can also input eight directions, including the four up, down, left, and right directions, as well as four intermediate directions: upper right diagonal (or upper right), lower right diagonal (or lower right), lower left diagonal (or lower left), and upper left diagonal (or upper left).

[0084] When using the direction switch 31 to specify eight directions, the user can simultaneously press the top and right buttons to specify "upper right diagonal," the right and bottom buttons to specify "lower right diagonal," the bottom and left buttons to specify "lower left diagonal," and the left and top buttons to specify "upper left diagonal" (four diagonal directions).

[0085] The push buttons 33a to 33d may have symbols such as triangle, circle, square, or the like on their upper surfaces. The push buttons 33a to 33d are used to instruct the character to act (for example, attack) in the game. For example, in this embodiment, the push buttons 33a to 33d are assigned the functions of a right punch, a right kick, a left kick, and a left punch. For example, when playing a game, a player operates the direction switch 31 or the joystick 32 with the thumb of his left hand, and operates the push buttons 33a to 33d or the joystick 34 with the thumb of his right hand.

[0086] The input unit 260 may be realized by a touch panel or a touch panel display. That is, the input unit 260 includes a detection unit 262 capable of detecting two-dimensional pointed position coordinates (x, y) on a screen on which an image is displayed. For example, the input unit 260 includes a detection unit 262 capable of detecting two-dimensional touch position coordinates (x, y) in a touch detection area (touch panel). The display screen (hereinafter, unless otherwise specified, referred to as a "touch panel") may be touched using a fingertip or an input device such as a touch pen.

[0087] The input unit 260 may also include a keyboard, a steering wheel, a microphone, an acceleration sensor, and the like.

[0088] The storage unit 270 serves as a work area for the 200 and the communication unit 296, and its function can be realized by RAM (VRAM) or the like.

[0089] 1 is a diagram showing an example of a storage area of ​​the storage unit 270. The storage unit 270 of this embodiment includes a main storage unit 271, an image buffer 272, a game information storage unit 274, a player information storage unit 276, a learning storage unit 278, and a learning model storage unit 279. Note that some of these may be omitted, or the storage unit 170 of the server device 10 or a given storage device connected via a network (a storage area on the cloud) may constitute some of them.

[0090] The main storage unit 271 is used as a work area. The image buffer 272 stores image data (display image) generated by the image generation unit 230. Note that image data generated by the server device 10 may be received and stored in the image buffer 272.

[0091] Game information is stored in the game information storage unit 274. Note that the terminal device 20 may receive game information from the server device 10 and store the game information in the game information storage unit 274.

[0092] The game information includes command information and character information. The game information stored in the game information storage unit 274 may also include character behavior information and related information related to the behavior information. The game information stored in the game information storage unit 274 may also include information on the game field (game space), information on the virtual camera, and other setting values ​​used in the game.

[0093] Command information is prepared for each character. The command information is predefined key data. In other words, the command information indicates the keys to be input on the controller 30 corresponding to the action (or the order in which the keys should be input if multiple keys are to be input).

[0094] Character information is information about a character. For example, it includes the character's parameters (stamina, attack power, defense power, and other parameters), items (weapons) possessed by the character, and level (rank, rank). The level indicates the skill level and strength of the character. In this embodiment, the level is updated sequentially based on the game results.

[0095] Player information is stored in the player information storage unit 276. Note that the terminal device 20 may receive player information corresponding to a player ID from the server device 10 and store the player information in the player information storage unit 276.

[0096] For example, the player information storage unit 276 stores the player's level, playing history, playing tendencies, information on other players related to the player, and the like.

[0097] The player information may include the player's operation input (operation information). The player information may also include not only information about the player associated with the player, but also information about the player's game media (for example, game media such as characters, cards, and items owned by the player). It may also be a concept that includes information, etc.

[0098] The learning storage unit 278 stores information (for example, learning data, teacher data, weight data, and various parameters) for learning (for example, machine learning).

[0099] Machine learning is a learning method aimed at acquiring patterns hidden in input and output values. Neural networks (deep learning) are one framework used in machine learning. A neural network is expressed using a mathematical model (function) called artificial neurons. The machine learning in this embodiment is not limited to neural networks, and other algorithms (logistic regression, decision tree, boosting, random forest, support vector machine, etc.) may also be used.

[0100] The learning model storage unit 279 stores a learning model. The learning model is a mathematical expression (function) that represents the correlation (relationship) and tendency between input data and output data. The learning model storage unit 279 stores a learning model that has been machine-learned by the learning unit 218.

[0101] The information storage medium 280 can store programs for causing a computer to function as each unit of this embodiment (programs for causing a computer to execute the processing of each unit). As will be described later, the processing unit 200 performs various processes of this embodiment based on the programs (data) stored in the information storage medium 280.

[0102] The display unit 290 outputs the image generated by this embodiment, and its function can be realized by a CRT, LCD, touch panel display, HMD (head mounted display), or the like.

[0103] In particular, in this embodiment, the display unit 290 also functions as an input unit 260 where the player operates the game by using a touch panel display. Here, the touch panel may be, for example, a resistive type (four-wire type, five-wire type), a capacitance type, an electromagnetic induction type, an ultrasonic surface acoustic wave type, or an infrared scanning type.

[0104] The sound output unit 292 outputs the sound generated by this embodiment, and its function can be realized by a speaker, headphones, or the like.

[0105] The communication unit 296 performs various controls for communicating with the outside (for example, the server device 10 or other terminal devices 20), and its functions can be realized by hardware such as various processors or communication ASICs, or programs.

[0106] The terminal device 20 may receive, via a network, programs and data for causing a computer to function as each unit of the present embodiment, which are stored in the information storage medium 180 or the storage unit 170 of the server device 10, and store the received programs and data in the information storage medium 280 or the storage unit 270. Such cases in which the terminal device 20 functions by receiving programs and data are also included within the scope of the present invention.

[0107] The processing unit 200 (processor) performs processing such as game processing, image generation processing, or sound generation processing in conjunction with the server device 10 based on input data from the input unit 260, programs, and the like.

[0108] In particular, in this embodiment, the game processing includes processing for starting the game when a game start condition is met, processing for progressing the game, processing for selecting objects such as characters and enemy characters, and the like. This includes processing for placing objects, processing for displaying objects, processing for calculating the game result, and processing for ending the game when a game ending condition is met.

[0109] The processing unit 200 also performs game processing (e.g., processing of a competitive game) based on the player's operation input input via the input unit 260. The processing unit 200 may be executed in conjunction with the server device 10, or a part or all of the processing unit 200 may be formed in the server device 10.

[0110] The processing unit 200 performs various processes using the storage unit 270 as a work area. The functions of the processing unit 200 can be realized by hardware such as various processors (CPU, DSP, etc.) and ASICs (gate arrays, etc.), or by programs.

[0111] The processing unit 200 includes a communication control unit 211, an object space setting unit 212, a movement / motion control unit 213, an operation input receiving unit 214, a game control unit 215, a virtual camera control unit 216, a behavior control unit 217, a learning unit 218, a setting unit 219, a determination unit 220, a search unit 221, a display control unit 222, a change unit 223, an image generation unit 230, and a sound processing unit 240. Note that some of these units may be omitted.

[0112] The communication control unit 211 performs processing for transmitting and receiving data to and from each server device 10. The communication control unit 211 also performs processing for storing data received from the server device 10 in the storage unit 270, processing for analyzing the received data, and other control processing related to the transmission and reception of data.

[0113] When a competitive game is executed based on information received from the server device 10, or when a player competes against another player via a network, the communication control unit 211 receives various information transmitted from the server device 10 or other terminal devices 20 and transmits the information to the server device 10 or other terminal devices 20.

[0114] The communication control unit 211 may be configured to communicate with another terminal device 20 or the server device 10 when receiving an operation input from the player to start communication.

[0115] Furthermore, the communication control unit 211 performs processing for transmitting and receiving data to and from another terminal device 20 or the server device 10 at predetermined intervals from the time when a communication connection is established until the communication connection is terminated.

[0116] The communication control unit 211 transmits player identification information and operation inputs to the server device 10, and performs processing to receive data (player web pages, screens, etc.) from the server device 10.

[0117] The communication control unit 211 may transmit and receive data to and from the server device 10 at a predetermined cycle, or may transmit and receive data to and from the server device 10 when an operation input is received from the input unit 260. In particular, the communication control unit 211 of this embodiment may perform a process of receiving given screen information (for example, screen information, etc.) from the server device 10.

[0118] Furthermore, in the case of a network system consisting of multiple terminal devices 20, the communication control unit 211 may perform communication control using a peer-to-peer (so-called P2P) method in which an online game is played while sending and receiving data between the multiple terminal devices 20, or may perform communication control using a client-server method in which each terminal device 20 plays an online game while sending and receiving data (information) via the server device 10. In the game system of this embodiment, data may be transmitted and received not only via wired communication but also via wireless communication.

[0119] The object space setting unit 212 performs a process of placing objects in an object space (virtual three-dimensional space). For example, it performs a process of forming a game space (for example, a stage where characters fight) in the virtual three-dimensional space. It also performs a process of placing display objects such as buildings, stadiums, cars, trees, pillars, walls, and maps (terrain) in addition to characters in the object space. Here, the object space is a virtual game space, and is a space in which objects are placed in three-dimensional coordinates (X, Y, Z), such as a world coordinate system or a virtual camera coordinate system.

[0120] For example, the object space setting unit 212 places an object (an object configured with primitives such as a polygon, a free-form surface, or a subdivision surface) in a world coordinate system. Also, for example, it determines the position and rotation angle (synonymous with orientation or direction) of the object in the world coordinate system, and places the object at that position (X, Y, Z) and rotation angle (rotation angle around the X, Y, and Z axes).

[0121] The object space setting unit 212 may perform processing to place instruction objects such as special command input instruction objects and markers on a screen (two-dimensional image, screen, screen coordinate system). The object space setting unit 212 may also place instruction objects in an object space (three-dimensional space, world coordinate system, virtual camera coordinate system, model coordinate system).

[0122] The movement / motion control unit 213 performs movement / motion calculations for objects in the object space. That is, it performs processing to move objects within the object space and make the objects move (motion, animation) based on operation inputs received from the controller 30, programs (movement / motion algorithms), various data (motion data), etc.

[0123] The movement / motion control unit 213 controls the behavior of the character object (character), which is the main object, in the object space.

[0124] Specifically, the movement / action control unit 213 performs processes such as controlling the actions of the player character operated by the player operating the player's own character based on key data input to the controller 30, hit determination processes for attack techniques unleashed by the character, and damage processing when attacked by an opponent character.

[0125] When the opponent is a real player, the movement / action control unit 213 acquires key data input on the opponent's terminal device 20, and based on the acquired key data, performs movement / action of the attack technique unleashed by the opponent character, hit determination processing of the attack technique, and movement / action processing of damage when attacked by the player character.

[0126] When the opponent is a computer (CPU), the movement and action control unit 213 performs, based on a predetermined program and algorithm, the movement and action of the attacking technique used by the computer character (also called NPC (non-player character)), hit determination processing for the attacking technique, and movement and action processing for damage when attacked by the player character. In other words, when the opponent is a computer, the movement and action of the computer character is controlled without being operated by the player.

[0127] The movement / action control unit 213 controls the computer character to If the character is an AI controlled by a learning model (short for Intelligence), it will move and act according to actions inferred using the learning model.

[0128] Furthermore, the movement / motion control unit 213 performs this processing for each frame (for example, 1 / 60 seconds). Note that a frame is a unit of time for performing object movement / motion processing and image generation processing.

[0129] The operation input receiving unit 214 receives an operation instruction command based on an operation input input to the controller 30 by the player.

[0130] Specifically, the operation input receiving unit 214 of this embodiment detects the operation instruction command input by the player based on the type of key input by the input unit 260, the direction of the key instruction, the number of times the key is pressed, the press time, the press timing, and a combination of these.

[0131] The game control unit 215 executes processes related to the progress of the competitive game, such as a process for starting the game when a game start condition is met (hereinafter also referred to as "game start process"), a game process for controlling the progress of the competitive game by controlling the player character in accordance with the player's operation input, a process for ending the game when a game end condition is met (hereinafter also referred to as "game end process"), and a process for progressing to the ending when the final stage is cleared.

[0132] When a player plays against a computer, the game control unit 215 progresses the game based on information on the player's operation input accepted by the operation input acceptance unit 214 of the terminal device 20 and information controlled by the computer (including, for example, information on actions determined by the action control unit 217).

[0133] When real players compete against each other, the game control unit 215 progresses the game according to the information on the operation input of the first player received by the operation input receiving unit 214 of the terminal device 20A and the information on the operation input of the second player on the terminal device 20B, which is information transmitted from the terminal device 20B of the second player.

[0134] The game control unit 215 determines whether the first character OB1 and the second character OB2 win or lose by having them attack and defend against each other, reducing their vitality values. Then, the game control unit 215 determines whether the game wins or loses based on the vitality values ​​of both characters. For example, during one round of the game, the character whose vitality value reaches a predetermined value (0) first becomes the loser, and the other becomes the winner. At the end of one round of the game period, if both characters have vitality values ​​of 1 or more, the character with the higher vitality value becomes the winner, and the other becomes the loser.

[0135] The virtual camera control unit 216 performs control processing of the virtual camera (viewpoint) for generating an image seen from a given (arbitrary) viewpoint in the object space.

[0136] Specifically, when generating a three-dimensional image, the virtual camera control unit 216 performs processing to control the position (X, Y, Z) and rotation angle of the virtual camera in the world coordinate system (for example, the rotation angle when rotating clockwise as viewed from the positive direction of each of the X, Y, and Z axes).

[0137] That is, the virtual camera control unit 216 performs processing to control at least one of the viewpoint position, line of sight direction, angle of view, movement direction, and movement speed of the virtual camera.

[0138] The behavior control unit 217 performs processing to control the behavior of the character. For example, the behavior control unit 217 controls the behavior of the character (hereinafter also referred to as "first character") operated by the player based on the operation input of the player.

[0139] In addition, the behavior control unit 217 uses learning data (e.g., a learning model) learned (e.g., by machine learning) in the learning unit 218 to control the behavior of a computer character (hereinafter also referred to as a "second character") controlled by a computer.

[0140] The behavior control unit 217 may control the behavior of the second character based on the related information searched for by the search unit 221.

[0141] The "action" may be one action, or may include a continuous action based on multiple actions that satisfy a continuation condition.

[0142] The action control unit 217 may define in advance, for each type of action of the first character, an action of the second character corresponding to that action.

[0143] The behavior control unit 217 may control the behavior of the second character using at least one of data defining the behavior of the second character and learning data. The number of predefined behaviors of the second character may be one or more.

[0144] For example, if the degree of matching of the searched related information is not greater than a predetermined value, the behavior control unit 217 may cause the second character to perform a predefined behavior corresponding to the detected behavior of the unlearned first character.

[0145] In addition, if the degree of matching of the searched related information is not greater than a predetermined value, the behavior control unit 217 may select one behavior from a plurality of predefined behaviors corresponding to the detected unlearned behavior of the first character under predetermined conditions, and cause the second character to perform the selected behavior.

[0146] The learning unit 218 learns (for example, through machine learning) the behavior of the first character and related information related to the behavior. For example, when the terminal device 20 receives related information, it generates, through machine learning, a learning model that outputs the behavior (behavior information) of the character.

[0147] The setting unit 219 sets a predetermined period during the game period as a period during which learning (e.g., machine learning) is performed frequently. For example, the setting unit 219 may set the predetermined period at the start of the game period. Furthermore, the setting unit 219 may be configured to be able to set the predetermined period based on an operation input by the player.

[0148] The setting unit 219 may set a combination of a plurality of items that make up the related information. Note that the term "item" may be rephrased as an element or a type.

[0149] The setting unit 219 may set at least one of the combination of multiple items that make up the related information, the learning frequency, and the weight of each of the multiple items that make up the related information before learning (e.g., before machine learning) based on the player's information.

[0150] Furthermore, the setting unit 219 may set at least one of the combination of multiple items constituting the related information, the learning frequency, and the weight of each of the multiple items constituting the related information, based on the player's information and in accordance with the progress of the game.

[0151] The setting unit 219 may set the weight of each of the multiple items that make up the related information according to the player's information.

[0152] The setting unit 219 may set the weight of each item that constitutes the related information according to the information of the first character.

[0153] The setting unit 219 may set the weight of each item that constitutes the related information according to the game information.

[0154] The setting unit 219 may be configured to accept a selection of an item with a high weight from among multiple items constituting the related information, based on an operation input by the player. The setting unit 219 may be configured to set a priority order for each of multiple items of the related information, based on an operation input by the player. The player information of the setting unit 219 may include information on the play history of the player. The player information may also include information on the past playing tendencies of the player. The player information may also include information related to other players that is determined based on predetermined information (e.g., level) of the player.

[0155] The determination unit 220 determines whether or not an unlearned action of the first character and information related to the action have been detected.

[0156] When the search unit 221 detects an unlearned behavior of a first character and related information about the behavior, it searches for related information that has a high degree of match with the detected unlearned behavior of the first character from among the related information about the learned behavior of the first character.

[0157] That is, when the search unit 221 detects an unlearned action of the first character and related information for that action, it searches for related information that is the same as the related information related to the detected unlearned action of the first character from related information related to learned actions of the first character. If there is no related information that is the same as the related information related to the detected unlearned action of the first character from related information related to learned actions of the first character, it searches for the most similar related information.

[0158] When the search unit 221 detects a continuous action of an unlearned first character and related information related to the continuous action, it searches for related information that has a high degree of match with the related information related to the detected continuous action of the unlearned first character from among the related information related to the learned continuous action of the first character.

[0159] The display control unit 222 performs processing to display a screen on the display unit 290. For example, the terminal device 20 displays the generated image on the display unit 290.

[0160] The display control unit 222 displays the display information of the screen received from the server device 10. Note that the display control unit 222 may display the display information and the screen using a web browser.

[0161] For example, the display control unit 222 displays the character name, level (rank), and stamina value of the current first character OB1 on the game screen, and the character name, level (rank), and stamina value of the second character OB2.

[0162] The varying unit 223 varies the weighting period based on the information of the player or the information of the first character.

[0163] The image generation unit 230 performs drawing processing based on the results of various processes performed by the processing unit 200 , thereby generating an image and outputting it to the display unit 290 .

[0164] That is, the image generation unit 230 generates an image in the object space that is seen from the virtual camera.

[0165] For example, the image generation unit 230 receives object data (model data) including vertex data (position coordinates of vertices, texture coordinates, color data, normal vectors, alpha values, etc.) of each vertex of an object (model), and performs vertex processing (shading using a vertex shader) based on the vertex data included in the input object data. Note that when performing vertex processing, vertex generation processing (tessellation, surface division, polygon division) for subdividing polygons may be performed as necessary.

[0166] In vertex processing, vertex movement processing and geometry processing such as coordinate transformation, for example, world coordinate transformation, field of view transformation (camera coordinate transformation), clipping processing, perspective transformation (projection transformation), and viewport transformation are performed in accordance with the vertex processing program (vertex shader program, first shader program), and based on the processing results, the vertex data given for the group of vertices that make up the object is changed (updated, adjusted).

[0167] Then, rasterization (scan conversion) is performed based on the vertex data after vertex processing, and the faces of the polygons (primitives) are associated with the pixels. Following rasterization, pixel processing (shading by pixel shaders and fragment processing) is performed to draw the pixels that make up the image (fragments that make up the display screen).

[0168] In pixel processing, various processes such as reading textures (texture mapping), setting / changing color data, semi-transparent compositing, and anti-aliasing are performed in accordance with the pixel processing program (pixel shader program, second shader program) to determine the final drawing color of the pixels that make up the image, and the drawing color of the perspective-transformed object is output (drawn) to the image buffer 272 (a buffer that can store image information on a pixel-by-pixel basis; VRAM, rendering target, frame buffer).

[0169] That is, pixel processing involves setting or changing image information (color, normal, brightness, alpha value, etc.) on a pixel-by-pixel basis, thereby generating an image seen from a virtual camera (a given viewpoint) in object space.

[0170] Vertex processing and pixel processing are realized by so-called programmable shaders (vertex shaders and pixel shaders), which are hardware that makes it possible to program the drawing process of polygons (primitives) using shader programs written in a shading language.

[0171] With programmable shaders, vertex-level and pixel-level processing can be programmed, allowing for greater freedom in the content of the rendering process, and significantly improving expressiveness compared to the fixed rendering processing performed by conventional hardware.

[0172] When drawing an object, the image generation unit 230 performs geometry processing, texture mapping, hidden surface removal, alpha blending, and the like.

[0173] In geometry processing, the object is subjected to coordinate transformation, clipping, perspective projection transformation, light source calculation, etc. Then, the object data (position coordinates of the object's vertices, texture coordinates, color data (brightness data), normal vector, α value, etc.) after geometry processing (perspective projection transformation) is stored in storage unit 270.

[0174] Texture mapping is a process of mapping textures (texel values) stored in the storage unit 270 to objects. This is a process for mapping to an object.

[0175] Specifically, the texture (surface properties such as color (RGB), alpha value, etc.) is read from the storage unit 270 using texture coordinates and the like set (assigned) to the vertices of the object. Then, the texture, which is a two-dimensional image, is mapped onto the object. In this case, processing is performed to associate pixels with texels, and bilinear interpolation is performed to interpolate the texels.

[0176] As the hidden surface removal process, the hidden surface removal process can be performed by the Z buffer method (depth comparison method, Z test) using a Z buffer (depth buffer) in which the Z values ​​(depth information) of the drawing pixels are stored.

[0177] That is, when drawing a pixel corresponding to an object's primitive, the Z value stored in the Z buffer is referenced. The Z value in the referenced Z buffer is then compared with the Z value of the drawing pixel of the primitive, and if the Z value of the drawing pixel is a Z value that is closer to the virtual camera (for example, a small Z value), the drawing process for that pixel is carried out and the Z value in the Z buffer is updated to the new Z value.

[0178] Alpha blending (alpha compositing) is a semi-transparent compositing process (normal alpha blending, additive alpha blending, subtractive alpha blending, etc.) based on an alpha value (A value).

[0179] For example, in alpha blending, a linear blending process is performed based on the alpha value on the drawing color (overwrite color) C1 to be drawn in the image buffer 272 and the drawing color (base color) C2 already drawn in the image buffer 272 (rendering target). In other words, if the final drawing color is C, it can be calculated by C = C1 * alpha + C2 * (1 - alpha).

[0180] The alpha value is information that can be stored in association with each pixel (texel, dot), and is information in addition to color information. The alpha value can be used as mask information, semi-transparency (equivalent to transparency or opacity), bump information, etc.

[0181] Furthermore, when playing a multiplayer online game in which data is exchanged with other terminals (second terminals) via a network, the image generation unit 230 performs processing to generate an image seen from a virtual camera (a virtual camera controlled by the terminal (first terminal)) that follows the movement of an object operated by the terminal (first terminal). In other words, each terminal performs independent drawing processing.

[0182] The sound processing unit 240 performs sound processing based on the results of various processes performed in the processing unit 200, generates game sounds such as background music, sound effects, or voices, and outputs them to the sound output unit 292. Note that the sound processing unit 240 may perform all or part of the same processing as the sound processing unit 140 of the server device 10.

[0183] The terminal device 20 of this embodiment may be controlled to allow game play in a single-player mode in which only one player can play, or in a multi-player mode in which multiple players can play. For example, when controlled in multi-player mode, game processing may be performed by transmitting and receiving data to and from other terminal devices 20 via a network, or one terminal device 20 may perform processing based on operation inputs from multiple input units.

[0184] In the case where a game is played by a plurality of terminal devices 20 in the present embodiment using P2P or the like, one terminal device 20 may act as a host and execute the processing. In this case, the terminal device 20 as the host may perform the processing of each processing unit of the server device 10 (a part or all of each processing unit).

[0185] Furthermore, the terminal device 20 of this embodiment may perform the same processing as the server device 10 and display a screen on the display unit of the terminal device 20.

[0186] [4] Overview The terminal device (learning device) 20 of this embodiment is a device capable of playing a fighting game. For ease of explanation, this embodiment will be described taking as an example a case where a player P1 plays a game on the terminal device 20.

[0187] 5 shows an example of a game screen displayed on the terminal device 20 of the player P1. The game is a fighting game in which a character OB1 (also referred to as the first character OB1) controlled by the player P1 and an opponent character OB2 (also referred to as the second character OB2) attack and defend against each other to reduce each other's vitality values, and the outcome is determined based on the vitality values.

[0188] In this embodiment, a practice mode game is provided in which a player P1 can practice a fighting game by fighting against a non-existent virtual opponent. The virtual opponent is, for example, a computer character controlled by a computer (CPU). The computer character in this embodiment may also be referred to as an AI character, since its behavior information is determined by AI.

[0189] As shown in FIG. 6, the terminal device 20 of this embodiment uses information on the action of the first character OB1 (e.g., a right punch) and related information on the action (e.g., the distance between the first character OB1 and the second character OB2 when the right punch is delivered) as learning data (e.g., teacher data), and generates a learning model by machine learning using the learning data.

[0190] That is, the terminal device 20 performs machine learning of "the action of the first character OB1" and "related information related to the action of the first character OB1."

[0191] In this embodiment, the behavior of the second character OB2 is controlled using the learned model, that is, the second character OB2 reproduces the operation manner of the player P1.

[0192] For example, when the first character OB1 delivers a "right punch," the terminal device 20 performs machine learning on the information about the action of the "right punch" and the information related to the "right punch" as a set.

[0193] After machine learning, the terminal device 20 controls the second character OB2 as follows. For example, as shown in FIG. 6, the first character OB1 launches (starts) a "right punch." Then, relevant information when the first character OB1 delivers the "right punch" is input into the learning model to obtain output data. For example, when the terminal device 20 obtains the action of "footwork counter" as output data, it starts controlling the movement and motion of the second character OB2 for the action of "footwork counter" based on the obtained action of "footwork counter."

[0194] Incidentally, if the behavior of the first character OB1 and related information about the behavior have been learned in the learning model, there is no problem with the behavior of the second character OB2. However, if the behavior of the first character OB1 and related information about the behavior have not been learned (under-learned) in the learning model, there is a problem that the behavior of the second character OB2 cannot be determined or the behavior becomes inappropriate.

[0195] Therefore, when an unlearned action of the first character OB1 and information related to the action are detected, the terminal device 20 performs the following process.

[0196] For example, as shown in FIG. 7, it is assumed that unlearned "jump kick" and related information of "jump kick" of a first character OB1 are detected.

[0197] In this embodiment, when the action of the first character OB1 (for example, "jump kick") and related information of the "jump kick" have not been learned in the learning model, related information of the action of the first character OB1 that has already been learned and has a high degree of match is searched (retrieved) from related information of the "jump kick" of the first character OB1 (for example, the distance between the first character OB1 and the second character OB2). For example, related information of a "throw" is searched as a result of the search. Then, the second character OB2 is made to perform an action (for example, "stepping back to defend") corresponding to the action "throw" that has been learned as a set with the related information (related information of the action corresponding to the "throw").

[0198] In this way, in this embodiment, even if the second character OB2 encounters an action (e.g., a "jump kick") of an unlearned first character OB1, it is possible to have the second character OB2 perform an action (e.g., a "backing back defense") that corresponds to an action (e.g., a "throwing technique") that has a high degree of matching in the related information.

[0199] In addition, in this embodiment, the actions of the first character, which controls the actions based on the player's operational input, and related information about those actions are learned by machine learning, so that player P1 can compete against second character OB2, which reflects player P1's habits.

[0200] Of course, the game system of this embodiment allows multiple real players to play a competitive game against each other, but for the sake of convenience, we will explain an example of a game in which a character OB1 controlled by player P1 competes against a character OB2 controlled by a computer.

[0201] [5] Description of behavioral information [5.1] Types of Actions Next, we will explain the character's actions. "Actions" include movement actions such as moving forward, backward, jumping, and crouching, attack actions such as right punch, right kick, left kick, left punch, and throwing techniques, defensive actions such as stepping back and guarding, continuous actions such as combos, and neutral actions where the character does nothing.

[0202] Note that a "continuous action" is a plurality of actions that satisfy a predetermined continuation condition, and may also be called a "combo" or a "continuous attack." In this embodiment, there are multiple types (items) of actions, but it is sufficient that there is at least one type.

[0203] [5.2] Command The command is information that defines the type of keys that the player should input and the input order. The command is defined in advance for each character in association with their actions.

[0204] The terminal device 20 of this embodiment determines an action based on the key history input by the player P1.

[0205] 8 shows an example of a command associated with the action content and action of a character (for example, the first character OB1). Note that this is an example of a command when the character is facing right. The action content and command are stored in the game information storage unit 274 in association with an action ID.

[0206] For example, to move the controlled character OB1 forward, "forward" is input to the right on the cross-shaped directional switch, and to move the controlled character OB1 backward, "backward" is input to the left on the cross-shaped directional switch.

[0207] To make the first character OB1 to be operated punch to the right, the triangle button 33a is pressed.

[0208] To make the first character OB1 to be controlled perform combo A, the player inputs a right punch command (e.g., button 33a with a triangle mark) twice, followed by a left kick command (e.g., button 33c with an x ​​mark) once within three seconds, for example.

[0209] [5.3] Secondary Character Actions In this embodiment, an action is determined using a machine-learned learning model, and the second character OB2 performs the determined action. For example, as shown in FIG. 9, the action (technique) of the first character OB1 (right punch) is initiated (executed) at timing T11. The terminal device 20 detects the right punch action of the first character OB1 at timing T11. For example, at timing T12, the terminal device 20 inputs related information into the learning model, obtains the output result of the action "footwork counter," and starts the "footwork counter" operation on the second character OB2. There is a slight delay between timing T11 and timing T12 (a delay of one to several frames occurs). In addition, there may be a state in which the second character OB2 cannot initiate a new action. For example, if the second character OB2 is in a rigid state (unable to act) or is currently executing an action frame that is already being performed, the second character OB2 cannot initiate a new action. In such a case, the relevant information at the time when the second character OB2 becomes able to perform the new action is input to the learning model, the action of the output result is acquired, and the second character OB2 starts the acquired action.

[0210] [5.4] Behavioral information items The behavior information is information for identifying a behavior, and can be, for example, an action number (identifier). The behavior information may be composed of multiple items (elements). For example, the items of the behavior information include an action number and an action frame.

[0211] Action numbers are assigned in accordance with the character's actions, such as a forward movement, a right punch attack, a movement to receive an attack when hit with a right punch, a throwing grab movement in a throwing technique, a movement to be thrown in a throwing technique, a throw escape movement to avoid a throw, etc. An action frame indicates which stage of the movement (behavior) corresponding to the action number is from the start to the end of the movement. For example, if a right punch is performed over a period of four frames, the right punch technique is represented by four action frames 1 to 4, and an action number is assigned to identify one action across the four action frames.

[0212] [6] Related information In this embodiment, as shown in FIG. 9, related information for the timing T11 when the first character OB1's action (e.g., a right punch) occurs is obtained, and the first character OB1's action (e.g., a right punch) and the related information are stored as a set in the learning memory unit 278.

[0213] The related information is information related to an action taken by a character, or in other words, the game situation. The terminal device 20 acquires information related to an action taken by the first character OB1 based on the timing at which the first character OB1 takes an action. For example, as shown in FIG. 9, if the first character OB1 starts a right punch action at timing T11, the terminal device 20 acquires related information at timing T11. Then, the information on the right punch action and the related information are and are stored as a set in the learning storage unit 278.

[0214] Furthermore, after timing T11, if the character OB1 starts a left kick action at timing T14, related information is acquired at timing T14. Then, the information on the left kick action and the related information are stored as a set in the learning storage unit 278.

[0215] In this way, the terminal device 20 acquires information related to the timing at which the action of the character OB1 occurs.

[0216] The related information has multiple items (multiple elements). Each item is associated with a variable name and its value. Figure 10 shows an example of related information related to a right punch based on timing T11 when the first character OB1 performs the action of right punching.

[0217] For example, the related information includes an item for the distance between the first character OB1 and the second character OB2. The variable name of this item is Distance, which indicates that the value of Distance at timing T11 is "2," for example.

[0218] The related information also includes an item for the remaining time of one round (the period from the timing of the first character OB1's action to the end of the game). The variable name of this item is Time, and for example, at timing T11, the value of Time is "47" (remaining time is 47 seconds).

[0219] The related information also includes an item for the stamina value of the first character OB1. The variable name of this item is MeHP, which indicates that the value of MeHP at timing T11 is "90," for example.

[0220] The related information also includes an item for the stamina value of the second character OB2. The variable name of this item is OpHP, which indicates that the value of OpHP at timing T11 is "80", for example.

[0221] Characters with remaining stamina are expected to be in a relaxed mental state, while characters with low stamina are expected to be in a desperate situation. Therefore, these stamina values ​​are used in machine learning.

[0222] The related information also includes an item for the height of the first character OB1 from the ground. The variable name of this item is MeOnFloor, which indicates that the value of MeOnFloor at timing T11 is "0," for example.

[0223] The related information also includes an item for the height of the first character OB1 from the ground. The variable name of this item is OpOnFloor, which indicates that the value of OpOnFloor is "0" at timing T11, for example.

[0224] The related information also includes an item for the defense period of the first character OB1 (the period from the start of defense to the timing of the first character OB1's action). The variable name of this item is GuardTime, and for example, the value of GuardTime at timing T11 is "0".

[0225] Although not shown, the related information in this embodiment includes the item of the position coordinates (X, Y, Z) of the first character OB1 in the game space, the item of the position coordinates (X, Y, Z) of the second character OB2 in the game space, and the item of the distance of the first character OB1 from the outer periphery of the battle area (for example, The field may also include other items such as an item for the distance of the second character OB2 from the outer periphery of the battle area (for example, distance from the wall), an item for the elapsed time (the period from the start of one round of the game to the timing when the first character OB1 takes action), an item for the character level (rank) of the first character OB1, an item for the direction of the first character OB1, an item for the direction of the second character OB2, an item for the height of the first character OB1, an item for the height of the second character, an item for the difference in stamina between the stamina value of the first character OB1 and the stamina value of the second character OB2, etc.

[0226] The related information may include an item of image information (video information), for example, an item of image information at the timing when the first character OB1 performed an action.

[0227] The related information may include items such as the brightness of the image, the display position (X, Y) of the character OB1 in the image, the display position (X, Y) of the character OB2 in the image, and the positional relationship between the first character OB1 and the second character OB2 on the image.

[0228] In fighting games, characters often face each other with the center of the screen as the boundary, but if both characters are on the right or left side of the screen, it is considered that the game situation is such that the other character is being cornered, and this information can be used for machine learning.

[0229] The related information may also include at least one of the virtual camera's position, orientation, and angle of view. For example, if the virtual camera is closer to the first character OB1, it will be displayed closer than if it is farther away, which may indicate that the game situation is heating up. This situation can be used for machine learning.

[0230] The related information may include a flag indicating whether the behavior information is continuous behavior information (combo behavior information). This allows for combo-specific predictions to be made during machine learning.

[0231] The related information may include an item of key data (operation input). For example, it may include a key history, which is a history of key data of player P1. The key history stores operation inputs (key data) of the character operated by the player, in association with frame numbers.

[0232] The related information may also include at least one item of the moving speed, acceleration, and moving direction of the first character OB1, and the moving speed, acceleration, and moving direction of the second character OB2.

[0233] [7] Description of data to be stored The terminal device 20 of this embodiment stores, in the learning storage unit 278, information on the action of the character OB1 operated by the player P1 and related information related to the action as a set.

[0234] The terminal device 20 may store this information in a storage area other than the learning storage unit 278 (for example, a storage area on the cloud).

[0235] In this embodiment, from the start of a given round of the game until the end of that round of the game (until the end of one round), information on the actions of the first character OB1 and related information on the actions are cumulatively stored in the learning memory unit 278 as learning data.

[0236] In this embodiment, learning data may be acquired and stored during a part of one round. Also, the frequency at which learning data is acquired and stored may be adjusted. Learning data may be acquired over multiple rounds, not just one round.

[0237] In addition, in this embodiment, some or all of the learning data may be processed for machine learning of the learning model.

[0238] [8] Learning model In this embodiment, a learning model is generated that performs machine learning on the behavior of the first character OB1 operated by the player P1 and related information related to the behavior. The learning model is a learning model that can reproduce the behavior of the first character OB1 operated by the player P1. The learning model can also be referred to as an equation or a function.

[0239] In this embodiment, an individual learning model is generated for each player so that the AI ​​character that is most suitable for that player becomes the practice partner. For example, the terminal device 20A of player P1 generates a learning model corresponding to player P1. Also, the terminal device 20B of player P2 generates a learning model corresponding to player P2.

[0240] [9] Controlling the behavior of the second character when it has not yet learned [9.1] Overview In this embodiment, if the action of the first character OB1 (e.g., "jump kick") determined based on the operation input of the player P1 and the related information of the action have not been learned in the learning model, there is a problem that the action of the second character OB2 cannot be controlled or the action is inappropriate.

[0241] Therefore, in this embodiment, when the action of the first character OB1 (for example, "jump kick") and the related information of the action have not been learned in the learning model, the following processing is performed.

[0242] 7, the terminal device 20 searches (retrieves, extracts) related information that has a high degree of coincidence with the related information of the action (e.g., jump kick) of the first character OB1 from the related information related to the learned actions of the first character OB1. For example, the terminal device 20 refers to the related information stored in the learning storage unit 278.

[0243] For example, suppose that the "distance between the first character OB1 and the second character OB2," which is one item of related information about the action of the first character OB1 (for example, information about a jump kick), is 1 meter. Then, the learned related information is searched for related information in which the distance between the first character OB1 and the second character OB2 is 1 meter.

[0244] If there is no related information in which the distance between the first character OB1 and the second character OB2 is 1 meter among the learned related information, related information in which the distance has a value that is closest to 1 meter is searched for.

[0245] Then, when the related information with the highest degree of match (for example, a distance of 1 meter between the first character OB1 and the second character OB2) is found from among the learned related information, the behavior of the second character OB2 is controlled based on that related information and the learned behavior corresponding to that related information (for example, a throwing technique).

[0246] When it is determined in advance that "stepping back to defend" is to be performed as an action corresponding to a "throw technique," the terminal device 20 controls the movement and motion of the second character OB2 to perform the action of "stepping back to defend."

[0247] For example, the terminal device 20 may input learned related information of when the first character OB1 performs a "throw" that is an action learned in combination with the searched related information and the second character OB2 responds to the "throw" into the learning model, and acquire output data. If the output data is a "guard" action, the terminal device 20 controls the movement and action of the second character OB2 to "guard" based on the acquired "guard" action.

[0248] The timing for acquiring the related information related to the action (e.g., jump kick) of the first character OB1 is, for example, the timing when the first character OB1 starts the action (e.g., jump kick motion), but it may also be a given timing in the action frame (during the action) of the action (e.g., jump kick). The related information related to the action may be, for example, the distance between the first character OB1 and the second character OB2, the parameters of the first character OB1 (e.g., stamina value), etc., or other items.

[0249] In this embodiment, related information with a high degree of match may be searched for by referring to a highly important item among multiple items of related information about the action of the first character OB1 (for example, information about a jump kick). For example, the "distance between the first character OB1 and the second character OB2" and the "stamina value of the first character OB1", which have high importance, are searched for from the learned related information. That is, in this embodiment, related information with a high degree of match for the "distance between the first character OB1 and the second character OB2" and for the "stamina value of the first character OB1" may be searched for.

[0250] [9.2] Judgment in the case of unlearned In this embodiment, there are various ways to determine whether the action of the first character OB1 (e.g., "jump kick") determined based on the operation input of the player P1 and the related information of the action have not yet been learned in the learning model.

[0251] For example, the terminal device 20 may register (store) in the memory unit 270 a list of pre-learned actions for the second character OB2, and if the action of the first character OB1 (e.g., "jump kick") is not registered in the action list, it may determine that the action has not been learned.

[0252] Furthermore, the terminal device 20 may refer to the learning storage unit 278 and determine that the first character OB1 has not been learned if the information on the behavior of the first character OB1 is not stored.

[0253] Alternatively, for example, the related information of the first character OB1 may be input into a learning model, and based on the output result of the learning model, it may be determined whether the behavior has not been learned. For example, if the output value of the learning model is equal to or less than a predetermined value, it may be determined that the behavior has not been learned.

[0254] [9.3] Search method In this embodiment, if the action of the first character OB1 (e.g., a "jump kick") determined based on the operation input of the player P1 has not been learned in the learning model, related information related to the learned actions of the first character OB1 is searched for related information that has a high degree of matching with the detected unlearned action of the first character (e.g., a "jump kick").

[0255] In such a case, for example, the terminal device 20 searches for related information from among the actions and related information of the first character OB1 stored in the learning memory unit 278 that has a high degree of match with related information related to the detected unlearned action of the first character (e.g., "jump kick").

[0256] There may be multiple pieces of information related to a search result. For example, the search result may be "throwing technique" There may be a case where the related information of "high kick" and the related information of "high kick" are detected. In such a case, the action of either one of the search results is used to determine the action of the second character OB2.

[0257] [9.4] Specific examples of exploration (A) Example of referencing the stamina value in related information In this embodiment, if the "jump kick" action of the first character OB1 has not been learned in the learning model, the stamina value, which is one item of the related information of the first character OB1 for the "jump kick" (i.e., the stamina value of the first character OB1 at the time of the jump kick), may be used to search for related information of the first character OB1 that has already been learned to find related information that matches most closely.

[0258] For example, the stamina value of the first character OB1 when performing a jump kick is "10," and the stamina value of the first character OB1 when performing a "left kick" that has already been learned is "10." It is determined that the stamina values ​​are the same and have the highest degree of match. Then, the action of the second character OB2 may be controlled based on the related information of the action of the "left kick" of the first character OB1. For example, if the action corresponding to the "left kick" is "guard," the action of the second character OB2 is determined to be "guard," and the second character OB2 performs the "guard." In other words, when the first character OB1 performs a "jump kick," the terminal device 20 causes the second character OB2 to perform the action of "guard."

[0259] (B) Example of referencing remaining game time In this embodiment, if the "jump kick" action of the first character OB1 has not been learned in the learning model, the related information with the highest degree of match may be searched for from among the learned related information of the first character OB1, using the remaining game time (for example, the remaining game time at the time of the jump kick), which is one item of the related information of the first character OB1 for the "jump kick."

[0260] For example, the remaining game time of the first character OB1 at the time of a jump kick is "15," and the remaining game time of the first character OB1 at the time of a learned "left punch" of the first character OB1 is "15." It is determined that the degree of match is highest because the remaining game times are the same. Then, the action of the second character OB2 is determined based on the related information of the action of the "left punch" of the first character OB1. For example, if the action corresponding to the "left punch" is "retreat," the action of the second character OB2 is determined to be "retreat," and the second character OB2 is made to perform the "retreat." In other words, when the first character OB1 performs a "jump kick," the terminal device 20 makes the second character OB2 perform the action of "retreat."

[0261] [9.5] Effect According to this embodiment, even when encountering a first character OB1 that has not been machine-learned, the behavior of the second character OB2 is controlled based on information related to the behavior of the first character OB1 that has been learned, so that the second character OB2 can be made to perform an appropriate behavior. Furthermore, according to this embodiment, an optimal AI character (e.g., the second character OB2) that reflects the player's habits can be provided as a practice partner. For example, if the first character OB1 of the player P1 frequently uses punch attacks, the AI ​​character will also be a character that frequently uses punch attacks. By practicing against a computer opponent that plays similarly to the player P1, the player P1 can practice correcting his or her habits or practicing to make use of his or her habits. Furthermore, if the player P1 performs an unlearned behavior (e.g., a jump kick), the AI ​​character can perform an appropriate behavior.

[0262] [9.6] Learning the actions of the second character and information related to those actions In this embodiment, the action of the second character OB2 and the related information related to the action are used. Machine learning may also be used.

[0263] For example, in this embodiment, when an unlearned action (e.g., "jump kick") of a first character OB1 and related information about that action are encountered, the action taken by a second character OB2 (e.g., "stepping back to defend") and related information at the time of that action (e.g., the start of the "stepping back to defend" action) may be machine-learned as a set.

[0264]

[10] Learning mode and practical mode In this embodiment, a learning mode (learning period) in which learning is performed using a learning model and a practice mode (practice period) in which the learning model is used to predict (infer) the behavior of the second character OB2 and progress the game are simultaneously performed. However, in this embodiment, the period of the learning mode in which the learning model is generated and the period of the practice mode may be set to be partially or entirely different periods.

[0265] For example, learning data may be collected from a battle between a first character and a computer character, and once a certain amount of learning data has been accumulated, a learning model may be generated based on the collected learning data.

[0266] In this embodiment, the learning model may be generated in a device other than the terminal device 20 of player P1 (for example, the terminal device 20 of another player, a server device, or a learning device). The generated learning model may then be received from the device and stored in the learning model storage unit 279, and the learning model may be used. Furthermore, learning data may be received from the device and stored in the learning storage unit 278.

[0267]

[11] Periods when learning is most frequent The terminal device 20 of this embodiment may set a predetermined period as a period during which learning (e.g., machine learning) is frequently performed within a game period (the period of one round of a fighting game), as shown in Fig. 11. The length of the predetermined period is a period shorter than the game period (e.g., 60 seconds), and may be, for example, 20 seconds.

[0268] "Learning is performed frequently" means, for example, that the number of times that learning data is acquired and machine-learned using a learning model is greater during a specified period than during periods other than the specified period.

[0269] For example, as shown in FIG. 11, the number of times machine learning is performed within a predetermined period (the period from TS to T1) is at least 10 times, and the number of times machine learning is performed outside the predetermined period (the period from T1 to TE) is at least 5 times or less.

[0270] The terminal device 20 sets the predetermined period before learning. The terminal device 20 may also set or change the predetermined period during learning. For example, the terminal device 20 may set or change the predetermined period depending on the progress of the game.

[0271] [11.1] Example of setting a specified period The terminal device 20 of this embodiment may set a predetermined period at the start of the game period.

[0272] For example, the start of the game period and the start of the predetermined period are set to the same timing TS, as shown in Fig. 11. The end time T1 of the predetermined period is set to 10 seconds after the start time TS.

[0273] In addition, the types of behaviors acquired as learning data during a given period (the period from TS to T1) are The types of actions acquired as learning targets outside the predetermined period (the period from T1 to TE) may be limited to techniques and continuous actions.

[0274] The start of a game is an important moment that determines the flow of the game and the direction of the match. For example, which character makes the first attack or which character executes the first move are important factors in the game. The start of a game is also a time when players' habits tend to emerge.

[0275] Therefore, in this embodiment, in order to carry out learning efficiently, a predetermined period is set at the start of the game period to learn many actions, and after the predetermined period has passed, actions such as techniques and consecutive actions (combos) are learned.

[0276] [11.2] Example of setting a predetermined period based on player input The terminal device 20 of this embodiment may set the predetermined period based on an operation input by the player P1 who operates the first character OB1.

[0277] An example of the setting screen is shown in Fig. 12. For example, as shown in Fig. 12, a player P1 sets the game start time to 0, the game end time to 60, and inputs the start timing A1 and end timing A2 of a predetermined period on the setting screen.

[0278] When the terminal device 20 receives the start timing A1 (e.g., 50) and the end timing A2 (e.g., 60), the player P1 sets a predetermined period based on the start timing A1 (e.g., 50) and the end timing A2 (e.g., 60).

[0279] In this way, the player P1 can play the game while being aware of the predetermined period. For example, if the player P1 practices a technique or a series of actions during the predetermined period, the player P1 can learn the corresponding counter technique. As a result, an optimal training environment can be provided for the player P1.

[0280] Furthermore, if the player P1 is aware that his or her bad habits tend to appear at the end, the best practice environment for the player P1 can be created by setting the final period (the remaining 10 seconds) as a predetermined period.

[0281] [11.3] Setting the learning frequency The terminal device 20 may divide one game round (for example, 60 seconds) into multiple time periods and set a learning frequency for each period. For example, the learning frequency may be set so that learning is performed 10 or more times from the start of the game until 10 seconds have elapsed, learning is performed 5 or more times but less than 10 times from 10 seconds to 20 seconds after the start of the game, and learning is performed less than 5 times after 20 seconds have elapsed from the start of the game.

[0282] Furthermore, the terminal device 20 may divide one round of game period (for example, 60 seconds) into a plurality of time-series periods, and set the type of behavior to be learned in each period.

[0283] First, the types of actions are divided into three types: simple actions, techniques, and combos. For example, the learning frequency is set so that until 10 seconds have passed from the start of the game, all types of simple actions, techniques, and combos are learned, and from 10 seconds to 20 seconds after the start of the game, only techniques and combos are learned, and after 20 seconds have passed from the start of the game, only combos are learned.

[0284] The terminal device 20 of this embodiment sets the learning frequency based on the operation input of the player P1. That is, the terminal device 20 may divide the game period into a plurality of periods and set the learning frequency for each period and the type of behavior to be learned in each period, based on the operation input of the player P1.

[0285]

[12] Explanation of continuous actions [12.1] Explanation of sequential actions The actions of this embodiment include consecutive actions (combos), which are multiple actions that satisfy a predetermined continuation condition. Consecutive actions are, in other words, consecutive attacks. Consecutive attacks are a useful attacking technique that can prevent an opponent character from opening up an attack and can also inflict greater damage on the opponent character. To have a character perform consecutive actions, multiple command inputs are required. The number of actions performed consecutively may be two, three or more.

[0286] A consecutive action is, for example, a sequential combination of a plurality of actions (a consecutive action in the order of right punch, right punch, left kick). As shown in Fig. 8, in this embodiment, combo commands for performing consecutive actions are defined in advance.

[0287] For example, to activate combo A, as shown in Figure 13, it is required to input commands for three actions: right punch, right punch, and left kick, consecutively within a continuous action period (for example, within 3 seconds).

[0288] An example of a successful combo A is as follows. As shown in FIG. 13 , for example, at timing T21, the first character OB1 inputs a command for a right punch based on the operation input of the player P1, and the right punch action is initiated. Based on the right punch action of the character OB1, the first character OB1 hits the second character OB2 at timing T22, and the right punch is successful. Note that when the second character OB2 is hit by the first character OB1, it becomes stiff for several frames and is defenseless, with no key data being reflected. Then, at timing T23, the first character OB1 inputs a command for a right punch based on the operation input of the player P1, and the right punch action is initiated. Based on the right punch action input by the character OB1 at timing T23, the first character OB1 hits the second character OB2 at timing T24, and the right punch is successful. Then, at timing T25, the first character OB1 inputs a command for a left kick based on the operation input of the player P1, and the left kick action is initiated. Based on the left kick action of the character OB1 activated at timing T25, the first character OB1 hits the second character OB2 at timing T26, and the left kick is successful. In this way, combo A is successful.

[0289] There are various possible "continuation conditions." For example, a "continuation condition" is to perform a predetermined series of actions within a continuous action period (for combo A, a series of right punch, right punch, and left kick). In other words, a "continuation condition" is to perform multiple actions in succession without an attack from the opponent character in between.

[0290] A series of consecutive actions inflicts more damage to a character than a single action (decreases the target's stamina more than a single action). For example, a right punch that lands at timing T24 may inflict more damage than a single right punch. Similarly, a left kick that lands at timing T26 may inflict more damage than a single left kick.

[0291] [12.2] Learning sequential actions and related information Consecutive actions and hit determinations associated with consecutive actions occur in a given consecutive action period (the period from T21 to T27) as shown in FIG. 13. In this embodiment, the relationships related to consecutive actions As the continuous information, information occurring during this continuous action period (the period from T21 to T27) is acquired.

[0292] For example, the related information of the continuous action includes an item of the average value (average distance) of the distance between the character OB1 and the character OB2 acquired in each frame (every 1 / 60 seconds) of the continuous action period.

[0293] Furthermore, the continuous action related information may include an item of the decrease in the stamina value of the character OB2 during the continuous action period. For example, if the stamina value of the character OB2 decreases from 100 to 10 during the continuous action period (the period from T21 to T27), the difference of 90 becomes the decrease in the stamina value.

[0294] Furthermore, the related information of the continuous action may include an item of the total value (total value, total distance) of the distance between the character OB1 and the character OB2 acquired in each frame (every 1 / 60 seconds) of the continuous action period.

[0295] Furthermore, the information related to the continuous action may include an item of the rate of change in damage inflicted by character OB1 on character OB2 during the continuous action period.

[0296] Furthermore, the related information of a consecutive action may include an item of a combination of multiple actions that make up the consecutive action. For example, combo A is a combination of two right punches and one left kick.

[0297] Furthermore, the related information of a consecutive action may include an item of the order (attack order) of the actions that make up the consecutive action. For example, in the case of combo A, the information is in the order of right punch, right punch, left kick.

[0298] Furthermore, the related information of a consecutive action may include an item of the number of actions (e.g., number of attacks) of the multiple actions that make up the consecutive action. For example, in the case of combo A, a right punch, a right punch, and a left kick are performed, so the number of attacks is three.

[0299] [12.3] Training Data The terminal device 20 uses the information on the continuous behavior and the information acquired as related information on the continuous behavior as learning data.

[0300] For example, the terminal device 20 stores a set of information on the consecutive actions of the first character OB1 (information on combo A) and information acquired as related information for the consecutive actions (combo A) (e.g., the average distance between characters, etc.) in the learning memory unit 278.

[0301] Then, the terminal device 20 performs machine learning of the information on the continuous behavior and the information related to the continuous behavior.

[0302] During the continuous action period, the continuous actions of the first character OB1 and related information are acquired, but the single actions of the first character OB1 (for example, each of the actions of a right punch, a right punch, and a left kick) and each related information may also be acquired and machine-learned.

[0303] [12.4] Searching for sequential actions In this embodiment, when the continuous action of the first character OB1 and the related information of the continuous action have not been learned in the learning model, related information of the learned action (single action or continuous action) is searched for based on the related information related to the continuous action.

[0304] When the behavior of "combo A" of the first character OB1 has not been learned in the learning model, the terminal device 20 selects, from among the learned related information, the behavior of "combo A" that has a high degree of coincidence with the related information of combo A. Explore related information.

[0305] For example, when a search is performed based on the average distance between the first character OB1 and the second character OB2 from among the related information, the process is as follows.

[0306] An example of a case where a search is performed with emphasis on the item "attack order of combo," which is one item of related information, will be described. For example, if combo A is a three-attack sequence of right punch, right punch, and left kick, the terminal device 20 searches for a learned combo with the most similar attack order. For example, combo B is searched for as a learned combo with a right punch, right punch, and right kick that is most similar to combo A. Then, the terminal device 20 causes the second character OB2 to perform an action corresponding to combo B.

[0307] 13, when the action corresponding to combo B is a "get-up kick," the terminal device 20 causes the second character OB2 to perform the action of a "get-up kick." That is, the terminal device 20 controls the movement and action of the second character OB2 to perform a "get-up kick" in the learning model at timing T28 when the second character OB2 is ready to act after the continuous action period of "combo A" of the first character OB1 has ended (for example, after timing T27).

[0308] Next, an example of a case where a search is performed with emphasis on the item "average distance between character OB1 and character OB2," which is one item of related information, will be described. For example, if the average distance during the continuous action period of combo A (average distance between the first character OB1 and the second character OB2) is 0.8 meters, the terminal device 20 searches for learned actions (continuous actions or single actions) that have a high degree of match with the average distance. For example, the average distance (average distance between the first character OB1 and the second character OB2) of learned combo C is 0.8 meters, and combo C is searched for as the learned combo that has the highest degree of match with combo A. Then, the terminal device 20 causes the second character OB2 to perform an action corresponding to combo C.

[0309] For example, when the action corresponding to combo C is "backward passive," the terminal device 20 causes the second character OB2 to perform the action of "backward passive." That is, the terminal device 20 controls the movement and action of the second character OB2 to perform "backward passive" in the learning model at timing T28 when the continuous action period of "combo A" of the first character OB1 ends and the second character OB2 becomes ready to act.

[0310] Thus, according to this embodiment, even if combo A has not been learned, the extent to which the sequence of combo A matches is searched for among learned combos, and the second character OB2 performs an appropriate action.

[0311] Note that when searching for consecutive actions, the search may be performed by changing the item of related information to be emphasized. For example, in addition to the average distance between characters in a combo and the order of attacks, if the number of attacks is emphasized as an example of another item of related information, combo A is an action consisting of two right punches and one left kick, a total of three attacks, so consecutive actions that have been learned and have the number of attacks of "three" are searched for. For example, when combo C is searched for as the learned combo that has the number of attacks of three and is most similar to combo A, the terminal device 20 causes the second character OB2 to perform the action corresponding to combo C.

[0312]

[13] Setting related information items The terminal device 20 of this embodiment may set items of related information to be used in machine learning in advance. Furthermore, the terminal device 20 of this embodiment may set multiple items of related information based on input information from the player P1.

[0313] The terminal device 20 may determine a combination of at least two or more items to be used in machine learning from among the multiple items of related information, based on an operation input by the player P1.

[0314] A combination of each item of related information means, for example, a set of at least two or more items from among a plurality of items of related information.

[0315]

[14] Weighting The terminal device 20 determines a weighting for each item of related information. Weighting is performed by evaluating (scoring) the importance of each item. In other words, in this embodiment, the weighting is determined by quantifying the importance of each item of related information to be studied.

[0316] For example, the terminal device 20 may determine the weighting according to at least one of the player information, the first character information, and the game information.

[0317] The terminal device 20 may use the weighted numerical value (weight value) in machine learning calculations.

[0318] The terminal device 20 performs weighting before learning (before machine learning). In this way, machine learning can be performed efficiently at an early stage. In other words, while performing weighting in real time requires a certain amount of time, in this embodiment, performing weighting at an early stage allows for efficient learning.

[0319] The terminal device 20 may assign weights according to the game progress (for example, during learning). In this way, learning can be performed efficiently in real time. Furthermore, weights suitable for the game progress can be assigned.

[0320] For example, in the initial state, the weight value of each item of related information is set to "1," and the value of items with high importance is set to a value greater than "1." There may be one or more items with high importance.

[0321] Specifically, when the terminal device 20 receives, based on the operation input of the player P1, a selection of the items of the related information to be learned that the player wants to emphasize, namely, the item "distance between the first character OB1 and the second character OB2" and the item "time remaining in one round," the terminal device 20 sets the weight of these two items to "3" and maintains the weights of the other items at "1."

[0322] [14.1] Setting weighting based on player information The terminal device 20 may determine the weighting of each item of related information to be learned according to the player information. Based on the player information set in advance, weighting can be set to items with high priority when learning, thereby enabling learning to achieve actions that will give the user high satisfaction.

[0323] Player information includes the player's level, rank, whether the player is a beginner, intermediate player, or advanced player, the amount of time the player has played the fighting game, win rate, number of matches played, and record.

[0324] For example, beginners tend to care about their stamina, while intermediate and advanced players tend to care more about the distance between them and their opponent. Therefore, beginners set the weight value for the stamina item to "3" and keep the weights for other items at "1".

[0325] Intermediate and advanced players set the weight value of the stamina item to "3" and keep the weights of all other items at "1".

[0326] The weighting of each item to be learned may be determined according to the player information, which may be information about the player P1 (age and sex).

[0327] [14.2] Setting weighting based on player character information The terminal device 20 may then determine the weighting of each item of related information to be learned in accordance with the player character information.

[0328] The player character information may be, for example, the number of characters operated by the player P1, the type of character, etc. It may also be the degree of mastery of the techniques (including combos) of each character managed by the player. The degree of mastery of a technique indicates the ratio of the number of techniques that the character has mastered to the total number of techniques of the character. For example, a technique that the player P1 successfully performed in practice mode is determined to have been mastered.

[0329] For example, for a character with a high level of mastery (for example, a character with a mastery level of 50% or more), the weight of the distance item among the related information items is set to "3," making it higher than the other items.

[0330] For example, for a character with a low level of proficiency (for example, a character with a level of proficiency of less than 50%), the weight of the stamina value among the items of related information is set to "3", making it higher than the other items.

[0331] [14.3] Weighting based on game information Then, the terminal device 20 may determine the weighting of each item of related information to be studied according to the game information.

[0332] The game information includes, for example, the levels of the player P1 and the opponent player, the level difference between them, the levels of the character OB1 operated by the player P1 and the opponent character OB2, the level difference between them, and so on.

[0333] For example, if the level difference is 10 or more, the weight of the distance item among the related information items is set to "3", making it higher than items other than distance. Also, if the level difference is 9 or less, the weight of the stamina value among the items of related information is set to "3", making it higher than the weight of items other than the stamina value.

[0334] The game information may also include the type of mode, such as casual mode or serious mode. Casual mode is a mode for playing casually, and serious mode is a mode for playing serious fighting games such as events, tournaments, and e-sports held by the operating company.

[0335] Furthermore, when the game mode is the serious mode, the weights of the distance and stamina value among the items of related information are set to "3", which is higher than the weights of the items other than the stamina value.

[0336]

[15] Settings based on player input [15.1] Example of weight setting screen In this embodiment, a selection of an item with a high weight among a plurality of items of related information of the first character OB1 may be accepted based on an operation input by the player P1.

[0337] FIG. 14 shows an example of a weight setting screen. For example, as shown in FIG. 14, when a player P1 If the player is concerned about the physical strength value of the first character OB1 and wants to place importance on the physical strength value of the first character OB1, the physical strength value item is selected as the item to be weighted highly.

[0338] Furthermore, although not shown, if the player P1 wants to place importance on the distance between the first character OB1 and the second character OB2, the player P1 selects the item of distance as an item to be weighted highly.

[0339] On the weight setting screen of this embodiment, as shown in Fig. 15, a weight distribution rate may be determined as a percentage for each of a plurality of items of related information for the first character OB1 based on an operation input by the player P1. Then, the weight value of each item of related information is determined according to the distribution rate. The weight is set so that the higher the distribution rate, the higher the weight value. Conversely, the weight is set so that the lower the distribution rate, the lower the weight value.

[0340] Furthermore, on the weight setting screen of this embodiment, the priority of each of a plurality of items of related information may be set based on the operation input of the player P1.

[0341] For example, as shown in FIG. 16, the priority of multiple items of related information of the first character OB1 may be determined. The terminal device 20 determines the weight of each of the multiple items of related information of the first character OB1 based on the priority. That is, the weight is determined so that the higher the priority, the higher the weight. In this way, the player can easily set the weight. Furthermore, the priority may be set for some items (for example, the top five items) of all the items of related information.

[0342]

[16] Setting weights based on player information The terminal device 20 of this embodiment may set at least one of the combination of multiple items constituting the related information of the first character OB1, the learning frequency, and the weight of each of the multiple items constituting the related information before learning (e.g., before machine learning) based on the player's information.

[0343] Furthermore, the terminal device 20 may set at least one of the combination of multiple items constituting the related information of the first character OB1, the learning frequency, and the weight of each of the multiple items constituting the related information, based on the player's information and in accordance with the game progress status.

[0344] In other words, the terminal device 20 may set at least one of the combination of multiple items constituting the related information of the first character OB1, the learning frequency, and the weight of each of the multiple items constituting the related information based on the player's information, during the game, during learning, after learning, the game progress, or depending on the game progress.

[0345] [16.1] Player Information Description The player information will be explained in detail below. The player information includes the amount of time the player has played fighting games, whether or not they have gaming experience, their fighting game history, the number of matches, their match results, their win rate, information about opponents they have faced, and the level of their opponents (rank, rank).

[0346] Furthermore, the player information includes information about the character that the player used in the fighting game, the techniques and consecutive actions (combos) that the character has learned, and the techniques and consecutive actions that the character has used.

[0347] It also includes information on the character that the player has used most often in the fighting game.

[0348] For example, the game play time of a fighting game is the total time from when the player starts the fighting game (logs in, powers on) until when the player ends the game (sleep, logs out, powers off, etc.).

[0349] If the game play time is less than one hour, the player is considered a beginner, and the weight is determined so that the stamina value of the character OB1 in the related information is weighted higher than the other items.

[0350] If the player's actions include more close-range attacks than long-range attacks, it is highly likely that the player is concerned about the distance between the first character OB1 and the second character OB2. Therefore, the weight of the related information item for the distance between the first character OB1 and the second character OB2 is set higher than that of the other items.

[0351] [16.2] Play History The player information includes information about the player's play history. For example, the game play history of player P1 is a history of behavioral information and related information of the first character OB1 operated by player P1. For example, an attack pattern is determined from the game play history of player P1. In other words, if the first character OB1 often corners the second character OB2 against a wall and unleashes a technique, the position information of the first character OB1 is considered important. Therefore, the weight of the item of the position information of the first character OB1 in the related information is set higher than that of other items.

[0352] [16.3] Past playing habits The player information may include information about the player's past playing habits.

[0353] For example, the past playing tendencies of player P1 include information indicating whether player P1 plays games in casual mode or serious mode more often, information indicating which players he plays against more often (advanced players, intermediate players, or beginners), and information indicating what playing style player P1 tends to use.

[0354] Play styles include what characters are used and what the typical flow of a match is (for example, a tendency to perform powerful moves within the first 10 seconds of the game to reduce the opponent's stamina to 0, or a tendency to launch a fierce attack in the last 30 seconds).

[0355] For example, if the player's past playing tendency is that he or she has played in serious mode more often than casual mode, the weighting is set so that the item of the stamina value of the first character OB1 in the related information is weighted higher than the other items.

[0356] Furthermore, if the player's past playing tendency is that he or she has been a beginner, the weight is set so that the item of the stamina value of the first character OB1 in the related information is weighted higher than the other items.

[0357] Also, if the player's past playing tendency is to use a big move within 10 seconds of the start of the game to reduce the vitality value of the opponent character to 0, the weights of the items of the vitality value of the first character OB1 and the second character OB2 in the related information are set higher than the weights of the other items.

[0358] [16.4] Information Related to Other Players The player's information may include information relating to other players that is determined based on the player's information.

[0359] For example, information related to other players determined based on information about player P1 is information about other players who are at a similar level to player P1.

[0360] For example, if the player P1 is at an advanced level, the items to be weighted higher are determined from the items that are the same as the items with high weights in the related information of another player P2 at an advanced level.

[0361] If the item with a high weight in the related information of another player P2 at the advanced level is the distance from the wall, the weight is set so that the weight of the item of the distance from the wall in the related information of player P1 is higher than the other items.

[0362] For example, the server device 10 may collect and centrally manage the related information of each player managed by the server device 10. Then, the terminal device 20 of player P1 obtains, from the server device 10, information related to another player P2 determined based on the information of player P1, such as "an item with a high weight among the multiple items of related information of player P2." The "item with a high weight among the multiple items of related information of player P2" may be the single item with the highest weight, or may be the items with the highest weight (for example, the top five).

[0363] [16.5] Supplementary explanation of an example of setting weights according to game progress The terminal device 20 may set the weight of each of the multiple items constituting the related information of the first character OB1 in real time based on the player's information and in accordance with the progress of the game.

[0364] For example, when the terminal device 20 detects a stamina reduction situation (an example of a game progress situation) in which the stamina value of the first character OB1 is decreasing, it sets the weight value of each item that constitutes the related information of the first character OB1 to the weight value of each item that corresponds to the stamina reduction situation.

[0365] Also, for example, when the terminal device 20 detects a successful attack situation (an example of a game progress situation) in which the attack of the first character OB1 is successful, it sets the weight value of each item that constitutes the related information of the first character OB1 to the weight value of each item that corresponds to the successful attack situation.

[0366] [16.6] Combination settings for multiple items Before learning, the terminal device 20 may set a combination of multiple items constituting related information based on information about the player before learning. For example, if the player is a beginner, a combination of multiple items constituting related information for beginners may be set. If the player is an advanced player, a combination of multiple items constituting related information for advanced players may be set.

[0367] Furthermore, after the game starts, the terminal device 20 may set a combination of multiple items constituting the related information of the first character OB1 in real time according to the game progress status. For example, when a stamina reduction status is detected, a combination of multiple items corresponding to the stamina reduction status is set. For example, when a successful attack status is detected, a combination of multiple items corresponding to the successful attack status is set.

[0368] [16.7] Setting the learning frequency Before learning, the terminal device 20 may set a learning frequency based on information about the player before learning. For example, if the player is a beginner, a learning frequency for beginners may be set. If the player is an advanced player, a learning frequency for advanced players may be set.

[0369] Furthermore, after the game has started, the terminal device 20 may set the learning frequency in real time according to the game progress status. For example, when a successful attack state is detected, a learning frequency corresponding to the successful attack state is set.

[0370]

[17] Flowchart 17A and 17B are flowcharts showing an example of behavior control according to this embodiment. Using these figures, the flow of behavior control of a second character OB2, an AI character, will be described when a character OB1 operated by a player P1 competes against the second character OB2 on the terminal device 20 of the player P1.

[0371] First, as shown in Fig. 17A, weights are set (step S1). For example, weights are set for each of a plurality of items of related information relating to an action. The weights may be set based on an operation input by the player P1.

[0372] Then, when the game starts (step S2), the action of the first character OB1 is controlled based on the operation input of the player P1 (step S3).

[0373] It is determined whether or not the unlearned behavior of the first character OB1 and related information relating to the behavior have been encountered (step S4).

[0374] If the unlearned behavior of the first character OB1 and the related information related to the behavior are not encountered (N in step S4), the behavior of the second character OB2 is determined based on the related information using the learning model (step S5). Then, learning is performed (step S6). For example, the behavior of the first character OB1 and the related information related to the behavior are learned. Then, the process proceeds to step S14.

[0375] If an unlearned action of the first character OB1 and related information related to that action are encountered (Y in step S4), the process proceeds to step S11 in Fig. 17B. Then, as shown in Fig. 17B, based on the related information related to the action of the first character OB1, related information of the learned action of the first character OB1 is searched for (step S11).

[0376] Then, based on the related information found, the action of the second character OB2 is determined (step S12).

[0377] Then, learning is performed (step S13). For example, the behavior of the first character OB1 and related information related to the behavior are learned. Also, the behavior of the second character OB2 and related information related to the behavior are learned. Then, the process proceeds to step S14.

[0378] It is determined whether the game has ended (step S14), and if the game has ended (Y in step S14), the process ends. On the other hand, if the game has not ended (N in step S14), the process returns to step S3. This ends the process.

[0379]

[18] A detailed explanation of machine learning In this embodiment, the weights are optimized by machine learning. The terminal device 20 optimizes the weights related to learning by performing deep learning processing based on actions (action information) and information related to the actions stored in the learning storage unit 278. When a subsequent battle game is played between the first character and the second character, the terminal device 20 controls the movement of the second character OB2 without relying on input from the input unit 260, by reflecting the weights of the optimized learning results.

[0380] The learning unit 218 trains each piece of related information in a recurrent neural network consisting of multiple layers. Deep learning calculations are performed using a recurrent neural network (RNN) to calculate behavioral information and optimize the weights of the learning results.

[0381] For example, the learning unit 218 sends behavioral information of the second character OB2 to the movement / action control unit 213, and the movement / action control unit 213 receives behavioral information reflecting the weight of the learning result from the learning unit 218 and controls the behavior (movement / action) of the second character OB2.

[0382] The learning memory unit 278 may also include a history data memory unit that stores a history of relevant information related to behavior, and a layer-by-layer weight memory unit that stores the calculation results of multiple layer-by-layer weights as a result of the deep learning process.

[0383] Furthermore, the terminal device 20 may write the collected related information to the learning memory unit 278, and may sequentially perform the process of multiplying each piece of related information stored in the history data memory unit as an input to the first layer by a weight for each input in multiple layers to calculate an output for each layer, and then calculating the output as an input to the next layer, and may optimize the weight for each layer using the difference between the behavioral information obtained as the output of the final layer and the information on the behavior that was actually performed, and store the weight for each layer in the weight memory unit for each layer.

[0384] The learning unit 218 may also include an inference processing unit for multiplying the current related information by the latest weight at that time to derive the action that the character would have taken, and a learning processing unit for reflecting the current related information and the action of character OB1 based on the actual operation input by player P1 in the deep learning weight.

[0385] The inference processing unit writes the collected related information into the history data storage unit, and uses each piece of related information stored in the history data storage unit as input to the first layer, multiplies it by a weight in each layer to calculate the output for each layer, and sequentially calculates this output as input to the next layer, thereby obtaining behavioral information as the output of the final layer.

[0386] The learning processing unit optimizes the weights of deep learning based on the behavioral information calculated by the inference processing unit and the behavioral information determined based on the player's operation input corresponding to the time of the current related information.

[0387] The learning unit 218 performs deep learning processing by performing calculation processing using at least one fully-connected layer and multiple gated recurrent unit layers. In the calculation processing using the fully-connected layer, a process of multiplying a weight matrix by an input vector is performed. In the calculation processing using each gated recurrent unit layer, in each of the multiple gated recurrent unit layers, a process of calculating a forgetting amount using a weight, a reflection amount using a weight, and an output candidate may be sequentially performed.

[0388] The learning unit 218 may selectively perform dropout processing after calculating output candidates as a calculation process by each gated recurrent unit layer, and then output the results.

[0389] The terminal device 20 may store operation data corresponding to operations on the input unit 260 by the player in the game information storage unit 274 in a first-in, first-out manner.

[0390] In the terminal device 20, the learning storage unit 278 may store layer-specific weights related to learning.

[0391] The learning storage unit 278 (weight storage unit) may include weight storage units for multiple layers that store the weights of each layer after deep learning.

[0392] The learning unit 218 may store actions (action information) during game play and related information of the actions in the game information storage unit 274 in a first-in, first-out manner, and may store the weight data of each layer after deep learning in the corresponding layer-specific weight data storage unit.

[0393] Next, a description will be given of generation of a learning model for obtaining behavioral information of the second character OB2 as an output result when related information is input.

[0394] In this embodiment, the neural network is configured with multiple layers (for example, six layers). The neural network is configured, for example, with a recurrent neural network (recurrent neural network).

[0395] In the inference process, when the related information is stored in the storage unit 270, each item of the related information is input in parallel to the first layer of the neural network. The inputs are multiplied by their respective weights to obtain the output.

[0396] Next, in each layer of the neural network, the output of the previous layer is weighted in the next layer and becomes the input of the layer after that. In this way, the output result in the output layer becomes the inferred behavior information of the second character OB2. The inferred behavior information of the second character OB2 is used as the input for the learning process. Note that inference and learning do not need to be performed simultaneously, and may be performed separately.

[0397] Next, the learning process will be explained. In the learning process, first, the error between the inferred behavioral information and the correct behavioral information is calculated. The error is written into weight data optimized for each layer, and updated. The weights optimized for each layer are stored for each layer, and updated.

[0398] Next, an example of the process (inference process) for calculating the output of each layer will be described. The inference process is composed of, for example, the first input layer, hidden layers (second to fifth layers), and the sixth output layer. In the calculation of the nodes of each layer, the output is obtained by calculating the sum of products of the input values ​​and weights. Note that in the calculation of the nodes, a bias may be added to the sum of products of the input values ​​and weights of each layer.

[0399] For example, the input layer is the number of items of related information, and the output is the number of elements of the behavior information of the second character OB2.

[0400] The output of the output layer (final layer) is the estimated action information of the second character OB2 corresponding to the related information. That is, the output layer is provided with nodes equal to the number of items of action information (for example, if there are 64 types of actions, then 64 nodes are provided). For example, when the value of each node is obtained, if the item with the highest value is, for example, the "footwork counter" item, then the action information of the second character OB2 is determined to be the footwork counter.

[0401] Next, the process of calculating the output using the weight data of each layer (inference process) will be described. In this embodiment, the weights are adjusted in the inference process. If weights need to be modified, they must be adjusted starting from the layer closest to the output side. The weights are, for example, a 64 x 64 matrix. Multiple types of weights may be prepared. These weights may be preset in the initial state based on the player's operational input or predetermined information, but are gradually optimized as the learning process is repeated, and are ultimately optimized.

[0402] In this embodiment, every time one round of a match is completed, weight data for six layers of that round is cumulatively stored in the learning storage unit 278 as each weight of the neural network.

[0403] The weight data may be read out again the next time the game is played to learn more, or may be used to reproduce the learned behavioral information. The weight data may be transmitted and received between multiple terminal devices 20 via a network.

[0404] According to this embodiment, machine learning can be used to create an optimal opponent character OB2 that can reproduce the operation of the character OB1 of the player P1. Furthermore, by using the results of prior learning, more human-like behavior information can be realized even in matches against a computer opponent.

[0405]

[19] Other supplementary information [19.1] Server equipment In this embodiment, an example has been described in which the terminal device 20 has a learning function and an inference function when providing a game using machine learning, but the server device 10 may also have the learning function and the inference function performed by the terminal device 20 described above.

[0406] [19.2] Training Data In this embodiment, a game in which the player P1 learns while playing the game and predicts the behavior of the second character OB2 has been described, but a period in which the player P1 competes against the computer (a period in which the first character OB1 operated by the player P1 competes against the second character OB2, a computer character) may be set in advance, and learning data (information on the behavior of the first character OB1 and information related to the behavior) may be collected during that period. Also, a trained learning model may be generated based on the collected learning data.

[0407] In this embodiment, a period during which the player P1 competes against the real player P2 (a period during which a first character OB1 operated by the player P1 competes against a second character OB2 operated by the player P1) may be set in advance, and learning data (information on the behavior of the first character OB1 and information related to the behavior and / or information on the behavior of the second character OB2 and information related to the behavior) may be collected during that period. Furthermore, a trained learning model may be generated based on the collected learning data.

[0408] [19.3] Supplementary explanation of weighting period and level In this embodiment, the weighting period may be changed based on information about the player or information about the first character. The information about the first character may be a concept including the learning data of the first character (information about the first character's actions and information related to the actions). Note that the "weighting period" refers to a period during which a predetermined item (e.g., an item selected based on a player's operation input) among multiple items constituting the related information is weighted highly.

[0409] For example, the terminal device 20 determines whether the player is a beginner, intermediate player, or advanced player based on the player information. If the player's level is, for example, less than 10, the player is determined to be a beginner. If the player's level is 10 or more but less than 80, the player is determined to be an intermediate player. If the player's level is 80 or more, the player is determined to be an advanced player (veteran).

[0410] The terminal device 20 then determines the weighting period according to the player's level. For example, for a beginner player, the weighting period is determined to be 30 seconds from the game start time TS. For an intermediate player, the weighting period is determined to be 10 seconds from the game start time TS and the 10 seconds from 30 seconds after the game start time TS to 40 seconds after the game start time TS. For an advanced player, the weighting period is determined to be 20 seconds from the game start time TS. The weighting period is determined to be the period from the beginning of the game to the end of the game TE and the last 5 seconds including the end of the game TE. In this way, weighting of learning can be performed over various periods depending on the player's level.

[0411] Similar to the level of the player, the level of the first character OB1 operated by the player may be used to determine whether the player is a beginner, intermediate, or advanced player. The weighting period may be changed based on information (e.g., level) of the first character OB1.

[0412] [19.4] Supplementary explanation of the second character's behavior control In this embodiment, for each type of action of the first character, an action of the second character corresponding to that action may be defined in advance.

[0413] For example, "guard" is defined as the action of the second character corresponding to the action of the first character OB1, "jump kick." Also, "throw escape" is defined as the action of the second character corresponding to the action of the first character OB1, "throw technique." Also, "crouch" is defined as the action of the second character corresponding to the action of the first character OB1, "kick." In this way, the terminal device 20 defines the actions of the second character OB2 in advance in association with each of the actions (action IDs) of the first character OB1.

[0414] The terminal device 20 may control the actions of the second character using at least one of data (hereinafter also referred to as "fixed data") that defines, for each type of action of the first character, the actions of the second character that correspond to that action, and learning data.

[0415] For example, when there is insufficient learning data and the learning of the behavior of the first character OB1 and information related to the behavior is insufficient, the terminal device 20 controls the behavior of the second character using at least one of the fixed data and the learning data. In such a case, whether to use the fixed data or the learning data may be selected based on a given lottery process. For example, when there is insufficient learning data (e.g., when the learning data set is 100 or less), the probability of the fixed data being selected by lottery is set to 80%, so that the fixed data is more likely to be selected by lottery. In this way, unnatural behavior of the second character can be minimized. Note that the terminal device 20 may decrease the probability of selection as the number of learning data increases.

[0416] [19.5] Supplementary explanation of match The terminal device 20 compares the related information related to the behavior of the unlearned first character OB1 with the searched related information, and quantifies the degree of agreement K between the related information related to the behavior of the unlearned first character OB1 and the searched related information as a percentage.

[0417] The degree of match K is calculated based on a given algorithm or formula. When searching for learned related information that has a high degree of match with related information related to the detected unlearned action of the first character (for example, "jump kick"), the degree of match K of the searched related information is calculated during or after the search.

[0418] The terminal device 20 may calculate the degree of coincidence K of the searched related information based on the weight of each item.

[0419] Furthermore, the terminal device 20 calculates the degree of match L for each item that constitutes the searched related information. The degree of match L for an item may also be referred to as the degree of item match.

[0420] For example, an example of calculating the degree of match L of "stamina value," which is one item of related information, will be described. If the stamina value of the first character OB1 at the time of jump kicking is "100," and the searched learned "stamina value" is "100," the degree of match L of the "stamina value" is determined to be 100%. If the searched learned "stamina value" is "80," the degree of match L is determined to be 80%. If the searched learned "stamina value" is "30," the degree of match L of the "stamina value" is determined to be 30%.

[0421] The terminal device 20 calculates the degree of coincidence K of the related information based on the degree of coincidence L of each item of the searched related information. For example, the average value of the degrees of coincidence L of each item of the searched related information may be calculated as the degree of coincidence K of the related information, or the proportion (e.g., 20%) of the number of items with a degree of coincidence L of 80% or more (e.g., "20" if there are 20 items with a degree of coincidence L of 80% or more) to the total number of items (e.g., "100" if there are 100 items) may be calculated as the degree of coincidence K of the related information.

[0422] [19.6] Supplementary explanation of search methods When the terminal device 20 performs a search focusing on weighted items, the search is performed based on the weighting value of the item. For example, the terminal device 20 may search for related information with a high degree of match L on an item-by-item basis in descending order of the weighting value of the item.

[0423] Specifically, if, among multiple items of related information, the weight of "stamina value" is "3", the weight of "remaining game time" is "2", and the weights of the other items are "1", then the related information with the highest degree of match L for the "stamina value" item with the higher weight value is searched for. If multiple pieces of related information with the highest degree of match L for "stamina value" are searched for (for example, multiple pieces of related information with a degree of match L of 100% for stamina value are searched for), then the related information with the highest degree of match L for the "remaining game time" item is searched for.

[0424] If multiple pieces of related information with the highest degree of matching are found for each of the items "stamina value" and "remaining game time" (for example, if multiple pieces of related information with a 100% degree of matching for both "stamina value" and "remaining game time" are found), the related information with the highest degree of matching L for the other items is searched for.

[0425] [19.7] Controlling the behavior of the second character based on the degree of similarity In this embodiment, if the degree of match K of the searched related information is not equal to or greater than a predetermined value, the second character may be made to perform a predefined action corresponding to the detected unlearned action of the first character. In this way, unnatural actions toward the second character can be minimized.

[0426] For example, suppose that "jump kick" and related information of "jump kick" are detected as actions of the unlearned first character. If the degree of coincidence K of the related information of "jump kick" is not equal to or greater than a predetermined value (e.g., 70% or greater), the terminal device 20 causes the second character to perform a predefined action corresponding to "jump kick" (e.g., "guard").

[0427] In addition, in this embodiment, if the degree of match K of the searched related information is not greater than a predetermined value, one action may be selected from a plurality of predefined actions corresponding to the detected unlearned action of the first character under predetermined conditions, and the second character may be made to perform the selected action.

[0428] For example, assume that three predefined actions corresponding to the "jump kick" of the first character OB1 are "guard," "step back to defend," and "crouch." The terminal device 20 selects one of the three actions, "guard," "step back to defend," and "crouch." One action is selected under a predetermined condition, and the selected action is performed by the second character. The predetermined condition may be selection by lottery processing, or when the game situation (game information) is a predetermined situation, etc.

[0429] For example, when "guard" is selected through a lottery process from among three actions, "guard," "backward defense," and "crouch," the terminal device 20 selects "guard" and causes the second character to perform "guard."

[0430] Furthermore, the terminal device 20 performs control such that, when the game situation is a predetermined situation, "guard" is always selected instead of the lottery process. The predetermined situation is, for example, when the remaining game time is 10 seconds or less, when the stamina value of the second character is 10 or less, etc.

[0431] In this embodiment, the same process is also performed for consecutive actions (combos). That is, when consecutive actions of an unlearned first character are detected, if the degree of coincidence K of the related information searched from the learned related information is not equal to or greater than a predetermined value, the terminal device 20 causes the second character to perform a predefined action corresponding to the detected consecutive actions of the unlearned first character.

[0432] For example, if the first character OB1 performs a consecutive action of kicking twice in a row, one of the actions "low guard," "kick," or "moving away" is selected by lottery, and the second character OB2 is made to perform the selected action.

[0433] In addition, when the first character OB1 performs a continuous action of kicking twice in a row, if the stamina value of the second character OB2 is less than a first predetermined value (for example, less than 50% of the upper limit) and is equal to or greater than a second predetermined value (for example, 30% or more of the upper limit), the second character OB2 may be controlled to perform a "low guard," and if the stamina value of the second character OB2 is less than the second predetermined value (for example, less than 30% of the upper limit), the second character OB2 may be controlled to perform a "movement away."

[0434]

[20] Application example This embodiment can be applied not only to competitive games, but also to racing games, shooting games, music games, RPGs (role-playing games), action games, sports games, and training simulation games.

[0435] It can also be applied to services that allow users to place their characters (avatars) in a three-dimensional virtual space and enjoy the virtual space.

[0436]

[21] Other The present invention is not limited to the above-described embodiments, and various modifications are possible. For example, terms cited in the specification or drawings as broadly defined or synonymous terms can be replaced with broadly defined or synonymous terms in other descriptions in the specification or drawings.

[0437] The present invention includes configurations that are substantially the same as the configurations described in the embodiments (for example, configurations with the same functions, methods, and results, or configurations with the same purpose and effects). The present invention also includes configurations in which non-essential parts of the configurations described in the embodiments are replaced. The present invention also includes configurations that achieve the same effects as the configurations described in the embodiments or that can achieve the same purpose. The present invention also includes configurations in which publicly known technology is added to the configurations described in the embodiments.

[0438] Although the embodiments of the present invention have been described in detail as above, it will be readily apparent to those skilled in the art that many modifications can be made without substantially departing from the novel features and effects of the present invention. Therefore, all such modifications are intended to be included within the scope of the present invention. [Explanation of symbols]

[0439] 10 Server device, 20, 20A, 20B, 20C Terminal device, 100 processing unit, 111 game processing unit, 112 display control unit, 119 reception unit, 120 communication control unit, 121 web processing unit, 122 Management Department, 123 Notification Department, 160 input unit, 170 memory unit, 171 main memory unit, 174 game information storage unit, 176 player information storage unit, 180 Information storage media, 196 Communications Department, 200 processing unit, 211 communication control unit, 212 object space setting unit, 213 movement / action control unit, 214 operation input reception unit, 215 game control unit, 216 Virtual camera control unit, 217 Behavior control unit, 218 Learning unit, 219 Setting unit, 220 determination unit, 221 search unit, 222 display control unit, 223 change unit, 230 image generation unit, 240 sound processing unit, 260 input unit, 262 detection unit, 270 memory unit, 271 main memory unit, 272 image buffer, 274 game information memory unit, 276 player information storage unit, 278 learning storage unit, 279 learning model storage unit, 280 information storage medium, 290 display section, 292 sound output unit, 296 communication unit

Claims

1. 1. A game system for controlling the behavior of a first character in a game in which the first character's behavior is controlled based on a player's operation input and a second character controlled by a computer appear, the game system comprising: The game is The action of the first character influences the control of the action of the second character, and by learning the action of the first character, the action of the second character can be controlled in accordance with the influence; a learning unit that learns the actions of the first character and related information related to the actions; a behavior control unit that controls the behavior of a second character using the learning data learned by the learning unit; A game system characterized by including a setting unit that divides the game period of the game into a plurality of periods and sets the type of behavior of the first character to be acquired as learning data according to each divided period.

2. In claim 1, The game period is: A game system characterized in that the action of the first character affects the control of the action of the second character.

3. In claim 1 or 2, The setting unit A game system characterized in that the game period is divided into multiple periods in chronological order.

4. In claim 1 or 2, The setting unit A game system characterized in that the number of types of actions is varied according to each divided period.

5. In claim 1 or 2, The setting unit A game system characterized in that the number of types of actions is set to be greater in the first period into which the game period is divided than in other periods.

6. In claim 1 or 2, The setting unit A game system characterized in that the type of action is set according to each divided period based on an operational input by a player.

7. In a game featuring a first character whose behavior is controlled based on a player's operational input and a second character controlled by a computer, a program that causes a computer to control the behavior of the second character, The game is The action of the first character influences the control of the action of the second character, and by learning the action of the first character, the action of the second character can be controlled in accordance with the influence; a learning unit that learns the actions of the first character and related information related to the actions; a behavior control unit that controls the behavior of a second character using the learning data learned by the learning unit; A program that causes a computer to function as a setting unit that divides the game period of the game into multiple periods and sets the type of behavior of the first character to be acquired as learning data according to each divided period.

8. A learning device for controlling the behavior of a first character in a game in which the first character's behavior is controlled based on a player's operation input and a second character controlled by a computer, comprising: The game is The action of the first character influences the control of the action of the second character, and by learning the action of the first character, the action of the second character can be controlled in accordance with the influence; a learning unit that learns the actions of the first character and related information related to the actions; a behavior control unit that controls the behavior of a second character using the learning data learned by the learning unit; A learning device characterized by including a setting unit that divides the game period of the game into a plurality of periods and sets the type of behavior of the first character to be acquired as learning data according to each divided period.

9. In a game featuring a first character whose behavior is controlled based on a player's operational input and a second character controlled by a computer, there is provided a method for controlling the behavior of the second character, comprising: The game is The action of the first character influences the control of the action of the second character, and by learning the action of the first character, the action of the second character can be controlled in accordance with the influence; The computer learning an action of a first character and relevant information related to the action; a step of controlling the behavior of a second character using the learning data learned in the learning step; The game period of the game is divided into a plurality of periods, and learning data is stored according to each divided period. and setting a type of action of the first character to be acquired as a parameter.