Game program, information processing system, information processing device, and information processing method
Patent Information
- Application Number
- JP2024031177
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-03-01
- Publication Date
- 2025-09-08
AI Technical Summary
Existing games face challenges in easily activating effects related to non-player characters when the player character is moving on an object, making it difficult to utilize non-player characters effectively during gameplay.
A game program that automatically moves a non-player character onto an object when the player character is on a moving object and enables the non-player character to perform actions in response to specific operation inputs, adjusting its firing direction based on the player's camera view and the object's orientation.
Enables easy activation and repeated use of non-player characters for attacks or obstacle destruction even when the player character is on a moving object, enhancing gameplay flexibility and reducing missed firing opportunities.
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
[Technical field]
[0001] The present invention relates to a game program, an information processing system, an information processing device, and an information processing method that enable a game to be played using a player character and a non-player character. [Background technology]
[0002] Conventionally, there are games in which a player character and a non-player character cooperate to fight (for example, see Patent Document 1). Specifically, in conventional games, there is a player character and multiple non-player characters, and when a player character and a non-player character are paired, the paired characters are made to perform support attacks in response to instructions from the player. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] JP 2019-103597 A Summary of the Invention [Problem to be solved by the invention]
[0004] However, there is room for improvement in order to activate effects related to non-player characters when a player character is moving on an object.
[0005] Therefore, an object of the present invention is to provide a game program, an information processing system, an information processing device, and an information processing method that can easily activate effects related to non-player characters when a player character is moving on an object. [Means for solving the problem]
[0006] In order to solve the above problems, the present invention employs the following configuration.
[0007] (First Configuration) A game program of a first configuration causes a computer of an information processing device to move a player character in a virtual space based on a first operation input and automatically move a first non-player character in the virtual space. The game program also causes the computer to place the first non-player character on a predetermined object when the player character is on the object and the object is moving, and to transition the first non-player character to an action-enabled state in which the first non-player character can perform a first action, and causes the first non-player character to perform the first action in response to a second operation input when the first non-player character is in the action-enabled state.
[0008] Based on the above, even when a player character is riding on a moving object, it is possible to easily cause an automatically controlled non-player character to perform an action.
[0009] (Second Configuration) In a second configuration, in the above first configuration, the computer may further be configured to transition the first non-player character to the activatable state in response to a third operation input being performed when the first non-player character is not in the activatable state and the player character and the first non-player character are in a predetermined positional relationship.
[0010] According to the above, when the player character and the first non-player character are in a predetermined positional relationship in a case where the player character is not in an actionable state, the first non-player character can be transitioned to an actionable state in response to the third operation input. When the player character is riding on a moving object, the first non-player character is automatically placed on the object and is in an actionable state, making it easier to perform the first action.
[0011] (Third Configuration) In a third configuration, in the above first or second configuration, the computer may be caused to launch the first non-player character in a predetermined direction as the first action.
[0012] Based on the above, the first non-player character can be launched in a predetermined direction, and a game can be played using the first non-player character.
[0013] (Fourth Configuration) In a fourth configuration, in the above third configuration, the computer may be caused to set the predetermined direction based at least on a line-of-sight direction of a virtual camera at a timing when the second operation input is performed.
[0014] Based on the above, the launch direction of the first non-player character can be set based on the line of sight direction of the virtual camera.
[0015] (Fifth Configuration) In a fifth configuration, in the third or fourth configuration, the computer may be configured to set the specified direction based at least on a direction of the object at the time when the second operation input is performed.
[0016] Based on the above, the launch direction of the first non-player character can be set based on the orientation of the object.
[0017] (6th Configuration) In a sixth configuration, in any of the third to fifth configurations, the computer may further configure that, after the first non-player character is launched, if the player character is on the object and the object is moving, the first non-player character is moved and re-positioned on the object, and transitions to the activateable state.
[0018] According to the above, after the first non-player character is launched, the first non-player character can be moved onto the object and placed on the object again to be ready for activation. This allows the first non-player character to be launched again immediately after being launched.
[0019] (Seventh Configuration) In a seventh configuration, in the above sixth configuration, the computer may further transition the first non-player character from the actionable state to an action-inhibited state in which the first action cannot be activated when the first non-player character is launched, and maintain the first non-player character in the action-inhibited state until a predetermined time has elapsed.
[0020] According to the above, when the first non-player character is launched, it is in an inactivatable state, but when the player character is moving on an object, the first non-player character is in an activateable state and the first non-player character can be launched, thereby preventing the loss of an opportunity to launch due to movement.
[0021] (8th Configuration) In an eighth configuration, in any of the third to seventh configurations, the computer may be configured to cause damage to an enemy character in the virtual space when the fired first non-player character hits the enemy character, or to destroy or remove a specified obstacle object in the virtual space when the fired first non-player character hits the obstacle object.
[0022] According to the above, the first non-player character can be hit to inflict damage on an enemy character, or hit to destroy an obstacle object, and the first non-player character can be used actively to play the game.
[0023] (Ninth Configuration) In a ninth configuration, in any one of the second to eighth configurations, the computer further automatically moves a second non-player character within the virtual space, When the player character and the second non-player character are in a predetermined positional relationship, a second effect may be produced in response to the second operation input.
[0024] According to the above, the second effect can be produced by performing a second operation input with the player character in a predetermined positional relationship with the second non-player character. In a game in which a plurality of non-player characters are arranged and an effect corresponding to each non-player character is produced, it is possible to make the first non-player character perform the first action easily even when the player character is moving on an object.
[0025] Furthermore, other embodiments may be an information processing system that executes the above-mentioned game program, an information processing device, or an information processing method that is executed in an information processing system. Effect of the Invention
[0026] According to the present invention, even when a player character is riding on a moving object, it is possible to easily cause an automatically controlled non-player character to perform an action. [Brief description of the drawings]
[0027] [Figure 1] FIG. 1 shows an example of a state in which a left controller 3 and a right controller 4 are attached to a main unit 2. [Diagram 2] A block diagram showing an example of the internal configuration of the main unit 2. [Diagram 3] Six-sided diagram showing an example of the left controller 3 [Figure 4] Six-sided diagram showing an example of the right controller 4 [Diagram 5]FIG. 13 shows an example of a game image displayed on the display 12 or a stationary monitor when the game of this embodiment is executed. [Figure 6] FIG. 13 is a diagram showing an example of a game image when the player character 100 approaches the first NPC 110. [Figure 7] FIG. 13 is a diagram showing an example of a game image when the first NPC 110 is in an activation state. [Figure 8] FIG. 8 shows an example of a game image after the player character 100 has moved to the right from the state shown in FIG. 7. [Figure 9] FIG. 9 is a diagram showing an example of a game image when the first NPC 110 is launched in the state of FIG. 8. [Figure 10] FIG. 13 shows an example of a game image immediately after the first NPC 110 returns to the vicinity of the player character 100 after being launched into the virtual space. [Figure 11] FIG. 13 shows an example of a game image when a player character 100 gets on a moving object and starts moving in a virtual space. [Figure 12] FIG. 13 shows an example of a game image after the player character 100 has begun to move in the virtual space on a moving object. [Figure 13] FIG. 1 shows an example of a game image when a player character 100 and a first NPC 110 ride on a vehicle object 300 and move in a virtual space. [Figure 14] FIG. 13 is a diagram showing an example of a game image when a first NPC 110 is launched. [Figure 15] FIG. 13 shows an example of a game image when a player character 100 gets on a flying object 310 and starts flying in a virtual space. [Figure 16] FIG. 1 shows an example of a game image when the player character 100 and the first NPC 110 are flying in a virtual space on a flying object 310. [Figure 17] FIG. 13 is a diagram showing an example of a game image when a first NPC 110 is launched. [Figure 18]FIG. 13 shows an example of a game image when the first NPC 110 is placed on the flying object 310 again after being launched. [Figure 19] FIG. 1 is a diagram for explaining a pitch direction component of a launch direction of a first NPC 110. [Figure 20] FIG. 1 is a diagram for explaining a yaw direction component of the launch direction of the first NPC 110. [Figure 21] FIG. 13 is a diagram showing an example of data stored in the memory of the main unit 2 during execution of the game process. [Figure 22] A flowchart showing an example of game processing executed by the processor 81 of the main unit 2. [Figure 23] A flowchart showing an example of the movement control process of the player character in step S103. [Figure 24] A flowchart showing an example of the first NPC control process in step S105. [Diagram 25] A flowchart showing an example of a process during firing of the first NPC in step S107. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0028] (System Configuration) A game system according to an example of this embodiment will be described below. An example of the game system 1 in this embodiment includes a main unit (information processing device; in this embodiment, it functions as a game device main unit) 2, a left controller 3, and a right controller 4. The left controller 3 and the right controller 4 are each detachable from the main unit 2. In other words, the game system 1 can be used as an integrated device by attaching the left controller 3 and the right controller 4 to the main unit 2. The game system 1 can also be used as a separate device from the main unit 2, the left controller 3, and the right controller 4. The hardware configuration of the game system 1 of this embodiment will be described below, and then the control of the game system 1 of this embodiment will be described.
[0029] Fig. 1 is a diagram showing an example of a state in which a left controller 3 and a right controller 4 are attached to a main unit 2. As shown in Fig. 1, the left controller 3 and the right controller 4 are each attached to and integrated with the main unit 2. The main unit 2 is a device that executes various processes (e.g., game processes) in the game system 1. The main unit 2 includes a display 12. The left controller 3 and the right controller 4 are devices that include an operation unit that allows the user to perform input.
[0030] The left controller 3 and the right controller 4 are detachable from the main unit 2. In the following, the left controller 3 and the right controller 4 may be collectively referred to as the "controller."
[0031] The main unit 2 alone or an integrated device in which the left controller 3 and the right controller 4 are attached to the main unit 2 may be a portable device. The main unit 2 or the integrated device may be a handheld device. The main unit 2 or the integrated device may be a portable device.
[0032] The main unit 2 also includes a touch panel 13 on the screen of the display 12. In this embodiment, the touch panel 13 is of a type that allows multi-touch input (e.g., a capacitive type). However, the touch panel 13 may be of any type, and may be of a type that allows single-touch input (e.g., a resistive film type), for example.
[0033] FIG. 2 is a block diagram showing an example of the internal configuration of the main unit 2. As shown in FIG.
[0034] The main unit 2 includes a processor 81. The processor 81 is an information processing unit that executes various types of information processing executed in the main unit 2, and may be composed of only a CPU (Central Processing Unit), or may be composed of a SoC (System-on-a-chip) including multiple functions such as a CPU function and a GPU (Graphics Processing Unit) function. The processor 81 executes various types of information processing by executing an information processing program (e.g., a game program) stored in a storage unit (specifically, an internal storage medium such as a flash memory 84, or an external storage medium inserted in the slot 23, etc.).
[0035] The main unit 2 includes a flash memory 84 and a dynamic random access memory (DRAM) 85 as examples of internal storage media built into the main unit 2. The flash memory 84 and the DRAM 85 are connected to the processor 81. The flash memory 84 is a memory used mainly for storing various data (which may be programs) saved in the main unit 2. The DRAM 85 is a memory used for temporarily storing various data used in information processing.
[0036] The main device 2 includes a slot interface (hereinafter abbreviated as "I / F") 91. The slot I / F 91 is connected to the processor 81. The slot I / F 91 is connected to the slot 23, and reads and writes data from and to a predetermined type of storage medium (e.g., a dedicated memory card) inserted in the slot 23 in response to an instruction from the processor 81.
[0037] The processor 81 appropriately reads and writes data from and to the flash memory 84, DRAM 85, and each of the above storage media to execute the above information processing.
[0038] The main unit 2 includes a network communication unit 82. The network communication unit 82 is connected to the processor 81. The network communication unit 82 communicates (specifically, wirelessly) with an external device via a network. In this embodiment, the network communication unit 82 connects to a wireless LAN and communicates with the external device by a method conforming to the Wi-Fi standard as a first communication mode. The network communication unit 82 also performs wireless communication with other main units 2 of the same type by a predetermined communication method (for example, communication by a proprietary protocol or infrared communication) as a second communication mode.
[0039] The main unit 2 includes a controller communication unit 83. The controller communication unit 83 is connected to the processor 81. The controller communication unit 83 performs wireless communication with the left controller 3 and / or the right controller 4. Any communication method may be used between the main unit 2 and the left controller 3 and right controller 4, but in this embodiment, the controller communication unit 83 performs communication with the left controller 3 and the right controller 4 in accordance with the Bluetooth (registered trademark) standard.
[0040] The processor 81 is connected to the left terminal 17, the right terminal 21, and the lower terminal 27. When the processor 81 performs wired communication with the left controller 3, it transmits data to the left controller 3 via the left terminal 17 and receives operation data from the left controller 3 via the left terminal 17. When the processor 81 performs wired communication with the right controller 4, it transmits data to the right controller 4 via the right terminal 21 and receives operation data from the right controller 4 via the right terminal 21. When the processor 81 performs communication with the cradle, it transmits data to the cradle via the lower terminal 27. Thus, in this embodiment, the main unit 2 can perform both wired communication and wireless communication with the left controller 3 and the right controller 4. When the main unit 2 alone or an integrated device with the left controller 3 and the right controller 4 attached to the main unit 2 is attached to the cradle, the main unit 2 can output data (e.g., image data and audio data) to a stationary monitor or the like via the cradle.
[0041] The main device 2 includes a touch panel controller 86, which is a circuit that controls the touch panel 13. The touch panel controller 86 is connected between the touch panel 13 and the processor 81. The touch panel controller 86 generates data indicating, for example, the position where a touch input has been performed based on a signal from the touch panel 13, and outputs the data to the processor 81.
[0042] The main unit 2 includes a power control unit 97 and a battery 98. The power control unit 97 is connected to the battery 98 and the processor 81. Although not shown, the power control unit 97 is also connected to each unit of the main unit 2 (specifically, each unit that receives power from the battery 98, the left terminal 17, and the right terminal 21). The power control unit 97 controls the supply of power from the battery 98 to each of the above-mentioned units based on instructions from the processor 81.
[0043] Furthermore, battery 98 is connected to lower terminal 27. When an external charging device (e.g., a cradle) is connected to lower terminal 27 and power is supplied to main unit 2 via lower terminal 27, battery 98 is charged with the supplied power.
[0044] 3 is a six-sided view showing an example of the left controller 3. The left controller 3 can also be held in a vertically long orientation when removed from the main unit 2. The housing 31 has a shape and size that allows it to be held in one hand, particularly the left hand, when held in a vertically long orientation. The left controller 3 can also be held in a horizontally long orientation. When the left controller 3 is held in a horizontally long orientation, it may be held with both hands.
[0045] The left controller 3 includes an analog stick 32. As shown in FIG. 3, the analog stick 32 is provided on the main surface of the housing 31. The analog stick 32 can be used as a direction input unit capable of inputting a direction. By tilting the analog stick 32, the user can input a direction according to the tilt direction (and input a magnitude according to the tilt angle). Note that the left controller 3 may include a cross key or a slide stick capable of slide input, instead of an analog stick, as the direction input unit. Also, in this embodiment, input is possible by pressing the analog stick 32.
[0046] The left controller 3 includes various operation buttons. The left controller 3 includes four operation buttons 33 to 36 (specifically, a right button 33, a down button 34, an up button 35, and a left button 36) on the main surface of the housing 31. Furthermore, the left controller 3 includes a record button 37 and a - (minus) button 47. The left controller 3 includes a first L button 38 and a ZL button 39 on the upper left of the side of the housing 31. The left controller 3 also includes a second L button 43 and a second R button 44 on the side of the housing 31 that is attached when the left controller 3 is attached to the main unit 2. These operation buttons are used to give instructions according to various programs (for example, OS programs and application programs) executed on the main unit 2.
[0047] In addition, the left controller 3 is equipped with a terminal 42 that enables the left controller 3 to communicate with the main unit 2 via wire.
[0048] 4 is a six-sided view showing an example of the right controller 4. The right controller 4 can also be held in a vertically long orientation when removed from the main unit 2. The housing 51 has a shape and size that allows it to be held in one hand, particularly the right hand, when held in a vertically long orientation. The right controller 4 can also be held in a horizontally long orientation. When the right controller 4 is held in a horizontally long orientation, it may be held with both hands.
[0049] The right controller 4, like the left controller 3, includes an analog stick 52 as a direction input unit. In this embodiment, the analog stick 52 has the same configuration as the analog stick 32 of the left controller 3. The right controller 4 may include a cross key or a slide stick capable of slide input, instead of the analog stick. The right controller 4, like the left controller 3, includes four operation buttons 53 to 56 (specifically, an A button 53, a B button 54, an X button 55, and a Y button 56) on the main surface of the housing 51. The right controller 4 further includes a + (plus) button 57 and a home button 58. The right controller 4 also includes a first R button 60 and a ZR button 61 on the upper right of the side surface of the housing 51. The right controller 4 also includes a second L button 65 and a second R button 66, like the left controller 3.
[0050] In addition, the right controller 4 is equipped with a terminal 64 for enabling the right controller 4 to communicate with the main unit 2 via wire.
[0051] (Game Overview) Next, the game of this embodiment will be described. Fig. 5 is a diagram showing an example of a game image displayed on the display 12 or a stationary monitor when the game of this embodiment is executed.
[0052] As shown in Fig. 5, a player character 100 and an enemy character 200 are placed in a three-dimensional virtual space (game space). The player character 100 is a character operated by the player, and moves in the virtual space in response to, for example, an operation on the left analog stick 32. The enemy character 200 is automatically controlled by the processor 81. Specifically, the enemy character 200 moves in the virtual space and attacks the player character 100.
[0053] The player character 100 performs an attack action in response to instructions from the player. First, the player character 100 can acquire and possess multiple weapon objects during the progress of the game. Furthermore, the player selects one of the multiple weapon objects possessed and equips it to the player character 100. Then, the player character 100 performs an attack action using the equipped weapon object in response to an operational input by the player.
[0054] When an attack action of the player character 100 hits an enemy character 200, damage is inflicted on the enemy character 200, and when the damage to the enemy character 200 exceeds a predetermined value, the enemy character 200 falls. The player character 100 moves through the virtual space while defeating a plurality of enemy characters 200. The player character 100 has a life value, and when attacked by an enemy character 200, the life value decreases. When the life value of the player character 100 reaches zero, the game is over, and the game is restarted, for example, by returning to the point where it was saved.
[0055] As shown in FIG. 5, a first non-player character (NPC) 110 and a second non-player character (NPC) 111 are placed in the virtual space. The first NPC 110 and the second NPC 111 are companion characters of the player character 100, and are automatically controlled by the processor 81. When the player character 100 moves in the virtual space, the first NPC 110 and the second NPC 111 move following the player character 100. For example, the first NPC 110 and the second NPC 111 automatically move in the virtual space so as not to be more than a predetermined distance away from the player character 100. In addition, the first NPC 110 and the second NPC 111 assist the player character 100. For example, the first NPC 110 and the second NPC 111 automatically fight with the enemy character 200 and defeat the enemy character 200.
[0056] A unique effect is associated with each of the first NPC 110 and the second NPC 111. When the player character 100 approaches the first NPC 110 or the second NPC 111, the effect associated with the first NPC 110 or the second NPC 111 can be activated.
[0057] FIG. 6 is a diagram showing an example of a game image when the player character 100 approaches the first NPC 110. The first NPC 110 and the second NPC 111 move automatically according to the movement of the player character 100, but when the player character 100 stops, the first NPC 110 and the second NPC 111 also stop. In this state, the player uses the left analog stick 32 to move the player character 100 toward the first NPC 110. As shown in FIG. 6, when the player character 100 approaches the first NPC 110 (when the distance between the player character 100 and the first NPC 110 becomes equal to or less than a predetermined value), for example, a button image 400 prompting the player to press the A button is displayed. At this time, when the player presses the A button, the first NPC 110 enters a state in which the first action (first effect) can be activated (hereinafter, referred to as an activation-enabled state).
[0058] FIG. 7 is a diagram showing an example of a game image when the first NPC 110 is in an action-ready state. As shown in FIG. 7, the first NPC 110 has a shape different from the normal state in the action-ready state, for example, a spherical shape. When the first NPC 110 is in an action-ready state and a firing instruction (for example, pressing the A button) is given by the player, the first NPC 110 performs a first action. Specifically, the first NPC 110 is fired into the virtual space.
[0059] As shown in Fig. 7, a direction image 120 is displayed on the screen. The direction image 120 is an image that represents the firing direction of the first NPC 110, and is a linear image that extends along the ground into the depths of the screen. The first NPC 110 is fired in the direction indicated by the direction image 120. Details of the firing direction of the first NPC 110 will be described later.
[0060] When the first NPC 110 is ready to be activated, it is disposed at a position in the depth direction of the screen relative to the player character 100. Specifically, the player character 100 is disposed so as to be located at a predetermined position in the line of sight of the virtual camera, and the first NPC 110 in the ready to be activated state is disposed further toward the line of sight of the virtual camera than the position of the player character 100. That is, when the first NPC 110 is ready to be activated, the virtual camera, the player character 100, and the first NPC 110 are disposed in order in the line of sight of the virtual camera. In this state, for example, when a right direction is input using the left analog stick 32, the player character 100 moves rightward, and the virtual camera and the first NPC 110 also move rightward.
[0061] Fig. 8 is a diagram showing an example of a game image after the player character 100 has moved to the right from the state of Fig. 7. Fig. 9 is a diagram showing an example of a game image when the first NPC 110 is fired in the state of Fig. 8.
[0062] As shown in FIG. 8, after the player character 100 moves to the right, the enemy character 200 is located in front of the player character 100. At this time, if a firing instruction (for example, pressing the A button) is given by the player, the first NPC 110 is fired by rolling on the ground. When the first NPC 110 is fired, it is in a firing state. During firing, the first NPC 110 moves in a direction indicated by the direction image 120. When the first NPC 110 hits the enemy character 200 during firing, damage is inflicted on the enemy character 200. When the damage of the enemy character 200 exceeds a threshold, the enemy character 200 falls down. When the first NPC 110 hits the enemy character 200 once, the enemy character 200 may fall down.
[0063] In this manner, the player character 100 can attack the enemy character 200 not only by performing an attack action using a weapon object that the player character 100 possesses, but also by firing the first NPC 110.
[0064] The fired first NPC 110 moves in the virtual space for a predetermined distance (or a predetermined time) and then returns to the vicinity of the player character 100. For example, the first NPC 110 descends from above the virtual space to the vicinity of the player character 100. FIG. 10 is a diagram showing an example of a game image immediately after the first NPC 110 returns to the vicinity of the player character 100 after being fired into the virtual space.
[0065] As shown in FIG. 10, when the first NPC 110 is launched and returns to the vicinity of the player character 100, the first NPC 110 is in a normal state (unactivatable state) that is not an activation state. When the first NPC 110 returns to the vicinity of the player character 100, the first NPC 110 does not transition to an activation state again until a predetermined limit period has elapsed. For example, as shown in FIG. 10, during the predetermined limit period, even if the player character 100 moves to the vicinity of the first NPC 110, the button image 400 is displayed in a manner indicating that pressing the A button is not valid. Specifically, a gauge is displayed on the button image 400, and the gauge extends as time passes. When the predetermined limit period has elapsed, the gauge of the button image 400 extends to the end, and pressing the A button is valid. In this state, when the A button is pressed, the first NPC 110 transitions to an activation state again.
[0066] In addition, in the virtual space, obstacle objects that are obstacles for the player character 100 are placed. The obstacle objects hinder the movement of the player character 100 and cause damage to the player character 100. When the first NPC 110 is fired and hits an obstacle object, the obstacle object is destroyed or removed. For example, a rock object is placed in the virtual space. The rock object is an obstacle object that hinders the movement of the player character 100. When the fired first NPC 110 hits the rock object, the rock object is destroyed. In addition to the rock object, a plurality of obstacle objects are placed in the virtual space. The player can advance through the game by firing the first NPC 110 to hit the obstacle object and destroying or removing the obstacle object.
[0067] In this specification, an object that is different from the player character 100, the NPCs (the first NPC and the second NPC 111), and the enemy character 200 and that can move within the virtual space regardless of whether it is currently moving or not is called a "moving object." In the game of this embodiment, the player character 100 can ride on a moving object that can move within the virtual space and move within the virtual space together with the moving object.
[0068] Fig. 11 is a diagram showing an example of a game image when the player character 100 gets on a moving object and starts moving in the virtual space. Fig. 12 is a diagram showing an example of a game image after the player character 100 gets on a moving object and starts moving in the virtual space.
[0069] For example, a vehicle object 300 is placed in the virtual space as an example of a moving object. Alternatively, parts constituting the vehicle object 300 (a plate-shaped object 301 on which the player character 100 can ride, and a plurality of wheel objects 302) are placed in the virtual space. The player character 100 can create the vehicle object 300 by combining these parts. The player character 100 rides on the vehicle object 300 that is stopped, and starts moving in the traveling direction according to an instruction from the player. Alternatively, the player character 100 rides on the vehicle object 300 that is moving, and moves in the virtual space together with the vehicle object 300.
[0070] The vehicle object 300 may move automatically in the traveling direction, or the traveling direction may be controlled in response to an operational input by the player. When the player character 100 is riding on the vehicle object 300, the position of the player character 100 on the vehicle object 300 may or may not be changed in response to an operational input by the player.
[0071] When the vehicle object 300 moves while the player character 100 is riding on the vehicle object 300, the first NPC 110 is placed on the vehicle object 300 as shown in Fig. 12. For example, the first NPC 110 descends onto the vehicle object 300 from above in the virtual space and is placed at a predetermined position on the vehicle object 300. For example, the first NPC 110 is placed at a position different from the player character 100, at a forward position on the vehicle object 300 (a position on the forward side in the traveling direction). In Fig. 12, the dashed line 110' indicates the first NPC before being placed on the vehicle object 300.
[0072] Specifically, when the moving speed of the vehicle object 300 becomes equal to or greater than a threshold value while the player character 100 is riding on the vehicle object 300, the first NPC 110 is placed on the vehicle object 300. At this time, the first NPC 110 is placed in an activatable state.
[0073] That is, when the player character 100 is not riding on a moving object, if the player character 100 approaches the first NPC 110 and the player gives an instruction (pressing the A button), the first NPC 110 transitions to an activation-ready state. On the other hand, when the player character 100 rides on a moving object and the moving object moves at a predetermined speed or faster, the first NPC 110 enters an activation-ready state even if the player character 100 approaches the first NPC 110 and the player does not give an instruction. The player character 100 and the first NPC 110 in the activation-ready state move in the virtual space while riding on the vehicle object 300.
[0074] Fig. 13 is a diagram showing an example of a game image when the player character 100 and the first NPC 110 move in the virtual space on the vehicle object 300. Fig. 14 is a diagram showing an example of a game image when the first NPC 110 is launched.
[0075] 13, the game image includes a direction image 120. When a firing instruction is given by the player in this state (for example, by pressing the A button), the first NPC 110 is fired in the direction indicated by the direction image 120. The firing direction of the first NPC 110 is the depth direction of the screen.
[0076] In this manner, while the player character 100 is moving on the vehicle object 300, the first NPC 110 can be launched to attack the enemy character 200 or destroy obstacle objects.
[0077] In addition to the vehicle object 300, the player character 100 can fly on a flying object 310 in the virtual space.
[0078] Fig. 15 is a diagram showing an example of a game image when the player character 100 gets on the flying object 310 and starts flying in the virtual space. Fig. 16 is a diagram showing an example of a game image when the player character 100 and the first NPC 110 get on the flying object 310 and fly in the virtual space.
[0079] For example, the flying object 310 may be placed in the virtual space in advance, or may be created by the player character 100 using part objects. The player character 100 rides on the flying object 310 stationary in the virtual space (or the flying object 310 moving) based on the player's operation input. Then, the flying object 310 flies in the virtual space. As shown in FIG. 15, when the speed of the flying object 310 becomes equal to or greater than a threshold, the first NPC 110 descends from above the virtual space onto the flying object 310 and is placed on the flying object 310. Specifically, the first NPC 110 is placed at a predetermined position on the flying object 310 in an activation-ready state. For example, the first NPC 110 in an activation-ready state is placed at a position different from the player character 100 and at a forward position on the flying object 310.
[0080] As shown in FIG. 16, when the flying object 310 is flying in the virtual space, a linear directional image 120 extending from the position of the first NPC 110 in the depth direction of the screen is displayed.
[0081] Fig. 17 is a diagram showing an example of a game image when the first NPC 110 is launched. Fig. 18 is a diagram showing an example of a game image when the first NPC 110 is again placed on the flying object 310 after being launched.
[0082] 17, when the player character 100 and the first NPC 110 are on the flying object 310, the first NPC 110 is launched in response to a launch instruction from the player (e.g., pressing the A button). The launched first NPC 110 rolls along the upper surface of the flying object 310 and moves a predetermined distance (or a predetermined time) in the virtual space. When the launched first NPC 110 hits, for example, an enemy character, the enemy character receives damage.
[0083] 18, after the first NPC 110 is launched, the first NPC 110 moves to the flying object 310 and is placed on the flying object 310 again. Specifically, when the player character 100 is on the flying object 310 and the flying object 310 is moving at a predetermined speed or faster, the first NPC 110 descends from above the virtual space onto the flying object 310 and is placed on the flying object 310 in an activatable state. When the player issues a launch command, the first NPC 110 is launched again.
[0084] In this way, when the player character 100 rides on a moving object that can move in the virtual space and the moving object moves at a predetermined speed or faster, the first NPC 110 is placed on the flying object 310 and becomes ready to be activated. Then, the first NPC 110 is launched in response to a launch command from the player.
[0085] In addition, in FIG. 13 and FIG. 16, the first NPC 110 is arranged so as to be in contact with the upper surface of the moving object, but the first NPC 110 does not necessarily have to be arranged so as to be in contact with the moving object. For example, the first NPC 110 may be arranged so that a part of it protrudes from the moving object in the activation-ready state. Also, the first NPC 110 may be arranged so as to float above the upper surface of the moving object in the activation-ready state, and moved together with the moving object. Also, the first NPC 110 may be arranged so as to hang below the moving object. Even in such a state, it can be said that the first NPC 110 is arranged on the moving object.
[0086] Next, the setting of the launch direction of the first NPC 110 will be described. The launch direction of the first NPC 110 is set according to the operation input of the player. The launch direction of the first NPC 110 is set based on the line of sight of the virtual camera and the direction of the moving object on which the first NPC 110 is riding.
[0087] Fig. 19 is a diagram for explaining the pitch direction component of the firing direction of the first NPC 110. Fig. 20 is a diagram for explaining the yaw direction component of the firing direction of the first NPC 110.
[0088] FIG. 19 shows a diagram of the player character 100 riding on a flying object 310 as viewed from the side of the virtual space. As shown in FIG. 19, a fixed XYZ coordinate system is set in the virtual space. The Y axis is an axis in the upward direction of the virtual space, and the X and Z axes are axes perpendicular to the Y axis and parallel to the ground. In addition, a fixed XcYcZc coordinate system is set for the virtual camera VC. The Zc axis is an axis in the line of sight of the virtual camera VC, the Xc axis is an axis in the rightward direction of the virtual camera VC, and the Yc axis is an axis in the upward direction of the virtual camera VC.
[0089] The flying object 310 rotates in a pitch direction (up and down in the virtual space) based on the operation input of the player. The flying object 310 ascends and descends in the virtual space by being rotated in the pitch direction. For example, the flying object 310 rotates in a pitch direction based on the input direction of the left analog stick 32.
[0090] The first NPC 110 is launched in a direction along the surface of the moving object (here, the flying object 310) on which the first NPC 110 is riding. That is, when the surface of the moving object on which the first NPC 110 is riding is parallel to the ground, the launch direction of the first NPC 110 is a direction parallel to the ground with respect to the pitch direction. When the surface of the moving object on which the first NPC 110 is riding is rotated in the pitch direction (that is, when the moving object is facing upward or downward in the virtual space), the launch direction of the first NPC 110 is rotated with respect to the pitch direction. For example, as shown in FIG. 19, when the flying object 310 is facing upward in the virtual space, the launch direction of the first NPC 110 is also the upward direction in the virtual space.
[0091] Also, FIG. 20 shows the virtual camera VC, the player character 100, and the first NPC 110 as viewed from the negative Yc-axis direction of the virtual camera VC. As shown in FIG. 20, the virtual camera VC is disposed so as to include the player character 100 within its field of view. The player character 100 is located in the line of sight of the virtual camera VC. The virtual camera VC rotates around the player character 100 in response to an operation input by the player (e.g., a directional input to the right analog stick 52). For example, when no operation input is performed to the right analog stick 52, the virtual camera VC is located behind the player character 100 (broken line in the figure). For example, when the left and right directions of the right analog stick 52 are input, the virtual camera VC rotates in the yaw direction (left and right direction) of the virtual space with the player character 100 as the center (solid line in the figure).
[0092] The yaw direction component of the firing direction of the first NPC 110 is set based on the line of sight of the virtual camera VC. Specifically, as shown in FIG. 20, a point P is set at the end of the line of sight of the virtual camera VC, and the firing direction of the first NPC 110 is set in a direction from the position of the first NPC 110 toward the point P. That is, the yaw direction component of the firing direction of the first NPC 110 is set based on the rotation of the virtual camera VC in the yaw direction. Therefore, when a firing instruction is issued, the first NPC 110 is fired generally in the depth direction of the screen, but does not necessarily match the line of sight of the virtual camera. The firing direction of the first NPC 110 may match the line of sight of the virtual camera VC.
[0093] In this way, the pitch direction (up and down direction) is set according to the orientation of the moving object on which the first NPC 110 is riding, and the yaw direction (left and right direction) is set according to the orientation of the virtual camera VC. The launch direction of the first NPC 110 is set based on the set rotation in the pitch direction and rotation in the yaw direction.
[0094] When the player character 100 and the first NPC 110 are riding on the vehicle object 300, the firing direction of the first NPC 110 is set in a similar manner. That is, the pitch direction component of the firing direction of the first NPC 110 is set according to the rotation of the vehicle object 300 in the pitch direction. For example, the vehicle object 300 moves along the ground in the virtual space. If the ground is tilted up or down, the vehicle object 300 also tilts up or down. According to the up or down tilt of the vehicle object 300, the firing direction of the first NPC 110 also tilts up or down. Also, the yaw direction component of the firing direction of the first NPC 110 is set according to the rotation of the virtual camera VC in the yaw direction.
[0095] In the game of this embodiment, objects other than the vehicle object 300 and the flying object 310 can also be moving objects. The player character 100 can ride on various moving objects that can move in the virtual space. For example, the moving object may be a mine cart object that can move on a railroad track, or a ship object that can move on the water surface. In addition, an object that does not have wheels is also a moving object if it is configured to be able to move on the ground. For example, if there is a plate-shaped object that does not have wheels and the plate-shaped object slides on the ground in the virtual space, the plate-shaped object is a moving object. The player character 100 moves in the virtual space by riding on a plate-shaped object that slides on a slope, for example. When the player character 100 rides on such a moving object, if the moving speed of the moving object is equal to or greater than a predetermined value, the first NPC 110 rides on the moving object and becomes in an activation state.
[0096] As described above, in the game of this embodiment, when the player character 100 rides on a moving object and the moving object is moving, the first NPC 110 is placed on the moving object in an activatable state. When the player character 100 rides on a moving object, the first NPC 110 is placed on the moving object in an activatable state even if the player character 100 is not moved close to the first NPC 110 and the A button is not pressed. Therefore, even when the player character 100 rides on a moving object, it is possible to easily fire the first NPC 110. That is, when the player character 100 rides on a moving object and moves, it is difficult for the player to finely control the position of the player character 100 and to approach the first NPC 110 placed in the virtual space, but since the first NPC 110 automatically rides on the moving object, it is possible to easily fire the first NPC 110 by placing the first NPC 110 in an activatable state.
[0097] In addition, when the player character 100 is moving on a moving object, the first NPC 110 becomes ready to be activated without moving the player character 100 close to the first NPC 110 and pressing the A button, so that the first NPC 110 can be instantly fired. In addition, after firing the first NPC 110, the first NPC 110 becomes in an inactivatable state while being fired, but after a predetermined time has passed, the first NPC 110 moves onto the moving object and becomes ready to be activated again. Therefore, when the player character 100 is moving on a moving object, the first NPC 110 can be repeatedly fired in a relatively short time, and the player can fire the first NPC 110 when he wants to attack an enemy character, for example, and it is possible to suppress the loss of a firing opportunity.
[0098] Also, when the player character 100 is not on a moving object (i.e., on the ground), the first NPC 110 becomes ready to be activated when the player character 100 approaches the first NPC 110 and the A button is pressed. In this state, the first NPC 110 is fired in response to a firing instruction. After the first NPC 110 is fired, the first NPC 110 returns to the vicinity of the player character 100, and the first NPC 110 is maintained in the inactivatable state even if the player character 100 approaches the first NPC 110 until a predetermined limited period has elapsed. On the other hand, when the player character 100 is on a moving object, the first NPC 110 becomes ready to be activated after the first NPC 110 is fired until the first NPC 110 returns to the moving object, but the predetermined limited period is not provided, and the first NPC 110 becomes ready to be activated at the time when the first NPC 110 returns to the moving object. This allows the first NPC 110 to be launched without waiting for a predetermined time limit to elapse when the player character 100 is riding on a moving object, and allows the first NPC 110 to be launched in succession in a relatively short period of time.
[0099] In addition, the first NPC 110 is launched in a direction based on the line of sight of the virtual camera. Therefore, the first NPC 110 can always be launched in the depth direction of the screen, making it easy to aim. In addition, the first NPC 110 is launched in a direction along the surface of the moving object on which the first NPC 110 is riding. Therefore, it is easy to aim, and the first NPC 110 can be launched into the virtual space without passing through the surface of the moving object or hitting the surface. In addition, since the moving direction of the moving object and the line of sight of the virtual camera are independent, the launch direction can be determined without being restricted by the moving direction.
[0100] (Explanation of data used in game processing) Next, details of the game processing will be described. First, data used in the game processing will be described. Fig. 21 is a diagram showing an example of data stored in the memory of the main unit 2 during execution of the game processing.
[0101] 21, the memory (DRAM 85, flash memory 84, or external storage medium) of the main unit 2 stores a game program, operation data, player character data, first NPC data, second NPC data, enemy character data, moving object data, and obstacle object data. In addition to these, various other data are stored in the memory.
[0102] The game program is a program for executing game processing, which will be described later. The game program is stored in advance in an external storage medium or flash memory 84 that is inserted into slot 23, and is read into DRAM 85 when the game is executed. The game program may be obtained from another device via a network (for example, the Internet).
[0103] The operation data is data related to operations acquired from the left controller 3 and the right controller 4. The operation data includes, for example, data corresponding to operations on the left and right analog sticks, and data corresponding to operations on each button. For example, the operation data is transmitted from the left controller 3 and the right controller 4 to the main unit 2 at predetermined time intervals (for example, 1 / 200 second intervals) and stored in memory.
[0104] The player character data is data related to the player character 100, and includes data related to the position, orientation, moving direction, moving speed, etc. of the player character 100 in the virtual space. The player character data also includes data indicating whether the player character 100 is riding on a moving object. The player character data also includes a life value of the player character 100. The player character data also includes data related to the appearance, such as the shape, of the player character 100.
[0105] The first NPC data is data related to the first NPC 110. Specifically, the first NPC data includes data related to the position, orientation, moving direction, moving speed, and the like of the first NPC 110 in the virtual space. The first NPC data also includes data related to the state of the first NPC 110. Specifically, the first NPC data includes, as data related to the state of the first NPC 110, data indicating whether or not it is in an activatable state, data indicating whether or not it is on a moving object, and data indicating whether or not it is being fired. The first NPC data also includes data representing the appearance, such as the shape, of the first NPC 110.
[0106] The second NPC data is data related to the second NPC 111. Specifically, the second NPC data includes data related to the position, orientation, moving direction, moving speed, and the like of the second NPC 110 in the virtual space. The second NPC data also includes data representing the appearance, such as the shape, of the second NPC 111. The second NPC data also includes data indicating whether or not a second effect related to the second NPC 111 is being activated.
[0107] Furthermore, in addition to the first NPC 110 and the second NPC 111, a third NPC and a fourth NPC may be placed in the virtual space. In this case, data related to the third NPC and the fourth NPC is stored in the memory. The third NPC and the fourth NPC are associated with unique effects, respectively.
[0108] The enemy character data is data related to a plurality of enemy characters 200 arranged in a virtual space. The enemy character data includes data related to the position, orientation, movement direction, movement speed, etc. of each enemy character 200 in the virtual space. The enemy character data also includes the life value of each enemy character 200. The enemy character data also includes data related to the appearance, such as the shape, of each enemy character 200, and data related to the attributes.
[0109] The moving object data is data related to a moving object (e.g., a vehicle object 300, a flying object 310, etc.) that can move in a virtual space. The moving object data includes data related to the position, orientation, speed, and moving direction of the moving object. The moving object data also includes data related to the appearance of the moving object, such as its shape.
[0110] The obstacle object data is data related to obstacle objects arranged in a virtual space, and includes data related to the positions and properties of the obstacle objects.
[0111] (Details of Game Processing in Main Unit 2) Next, a detailed description will be given of the game processing performed in the main unit 2. Fig. 22 is a flowchart showing an example of the game processing executed by the processor 81 of the main unit 2.
[0112] 22, processor 81 first executes an initial process (step S100). Specifically, processor 81 sets a three-dimensional virtual space, and places player character 100, enemy character 200, first NPC 110, second NPC 111, a virtual camera, moving objects, obstacle objects, and the like in the virtual space. After executing the initial process, processor 81 repeatedly executes the processes of the following steps S101 to S110 at a predetermined frame time interval (for example, 1 / 60 second interval).
[0113] In step S101, the processor 81 acquires operation data from the controllers. The operation data includes data relating to the operation states of each button and analog stick of the left controller 3 and each button and analog stick of the right controller 4. In step S101, the processor 81 acquires the operation data transmitted from each controller and stored in memory.
[0114] Next, the processor 81 performs a virtual camera control process (step S102). Here, the processor 81 rotates the virtual camera VC around the player character 100 in accordance with, for example, the input direction of the right analog stick 52. For example, when the player character 100 is riding on a moving object, the processor 81 rotates the virtual camera VC in the yaw direction of the virtual space in accordance with a left / right input of the right analog stick 52. Also, the processor 81 rotates the virtual camera VC in the pitch direction of the virtual space in accordance with an up / down input of the right analog stick 52.
[0115] Next, processor 81 performs a movement control process for the player character (step S103). Here, the process includes moving player character 100 in the virtual space based on the operation data, placing player character 100 on a moving object, and moving the moving object when player character 100 is on the moving object. In addition, the process includes transitioning first NPC 110 to an actionable state. The details of the movement control process for the player character in step S103 will be described later.
[0116] Next, the processor 81 performs a movement control process for the moving object (step S104). Here, a physical calculation based on the laws of physics is performed for each moving object in the virtual space, thereby controlling the movement of each moving object. Specifically, the processor 81 performs a physical calculation based on the moving speed of the moving object, the force acting on the moving object, the mass of the moving object, gravity, friction with the ground, air resistance, and the like. The processor 81 controls the movement of the moving object according to the result of the physical calculation. This updates the position and moving speed (speed and moving direction) of each moving object. For example, when a moving object has a power object that generates power, the power of the power object is also taken into consideration. In addition, when the player character 100 is riding on a moving object, the mass of the player character 100 is also taken into consideration. Note that when the player character 100 is riding on a moving object, the moving speed (speed and moving direction) of the moving object may be changed according to the operation of the player. For example, when the player character 100 is riding on a moving object, the moving direction of the moving object may be changed according to the direction operation of the player. Also, for example, when the player character 100 rides on the flying object 310 and the flying object 310 flies in the air, if the position of the player character 100 on the flying object 310 changes, the inclination of the flying object 310 may change, and the moving direction of the flying object 310 may change. Also, when the player character 100 rides on a moving object having a powered object, the power of the powered object may be generated in response to the operation of the player, and the moving speed of the moving object may be changed by the generation of the power. Also, for example, when the player character 100 rides on a stopped moving object, the powered object may start to operate in response to the operation of the player, and the moving object may start to move in response to the power of the powered object. Note that, when the first NPC 110 rides on a moving object, the mass of the first NPC 110 may not be taken into consideration, or may be taken into consideration.
[0117] Next, processor 81 performs a first NPC control process (step S105). Here, processor 81 launches first NPC 110 into the virtual space, moves first NPC 110 in the virtual space according to a predetermined algorithm, and causes first NPC 110 to perform a predetermined action in the virtual space. Details of the first NPC control process in step S105 will be described later.
[0118] Next, the processor 81 performs other character control processing (step S106). Here, processing is performed on characters automatically controlled by the processor 81 other than the player character 100 and the first NPC 110. Specifically, the processor 81 moves the enemy character 200 in the virtual space, makes it appear in the virtual space, and makes the enemy character 200 perform an attack action on the player character 100, according to a predetermined algorithm. In addition, the processor 81 moves the second NPC 111 in the virtual space and makes it perform a predetermined action in the virtual space, according to a predetermined algorithm. For example, when the player character 100 is not on a moving object, the processor 81 moves the second NPC 111 in the virtual space so that the second NPC 111 follows the player character 100. In addition, when the player character 100 is not on a moving object, the processor 81 makes the second NPC 111 perform a predetermined action. For example, as a predetermined action, processor 81 controls second NPC 111 to fight enemy character 200. Based on these controls, processor 81 moves enemy character 200 and second NPC 111 by a movement amount for one frame, and advances animation of enemy character 200 and second NPC 111 based on the action by one frame.
[0119] Next, processor 81 performs a first NPC firing process (step S107). Here, a process is performed when first NPC 110 is fired into the virtual space and moves within the virtual space. Details of the first NPC firing process in step S107 will be described later.
[0120] Next, processor 81 performs attack processing of player character 100 (step S108). Here, based on the operation data, a process of having player character 100 perform an attack action and inflict damage on enemy character 200 is performed. Specifically, processor 81 determines whether an attack instruction has been given based on the operation data, and, if an attack instruction has been given, causes player character 100 to start the attack action. The attack action is performed for a plurality of frames. During the attack action, in step S108, an animation related to the attack action is advanced one frame at a time. During the attack action, even if a new attack instruction is given, the attack action corresponding to the new attack instruction is not started. Also, in step S108, processor 81 determines whether the attack action being executed by player character 100 has hit enemy character 200, and, if the attack action has hit enemy character 200, inflicts damage on enemy character 200. Furthermore, in step S108, when the player character 100 is attacked by the enemy character 200, a process of decreasing the life value of the player character 100 is performed.
[0121] Next, the processor 81 performs an output process (step S109). Specifically, the processor 81 generates an image of a virtual space according to the results of the processes in steps S102 to S108 using a virtual camera, and outputs the generated image to a display device. The processor 81 also outputs sound together with the generation and output of the image. As a result, a game image is displayed on the display device, and sound according to the game process is output from the speaker.
[0122] Next, processor 81 determines whether or not to end the game processing (step S110). For example, if the player instructs to end the game, processor 81 determines to end the game processing (step S110: YES), and ends the game processing shown in FIG. 22. If processor 81 determines not to end the game processing (step S110: NO), it executes the processing of step S101 again. This concludes the description of the game processing shown in FIG. 22.
[0123] (Player character movement control process) Next, the player character movement control process in step S103 will be described in detail below. Fig. 23 is a flow chart showing an example of the player character movement control process in step S103.
[0124] The processor 81 first moves the player character 100 in the virtual space based on the operation data (step S120). Here, the processor 81 moves the player character 100 in the virtual space based on, for example, an operation input to the left analog stick 32. Even if the player character 100 is on a moving object, the player character 100 moves on the moving object based on an operation input to the left analog stick 32. In addition, when the player character 100 is not on the moving object and the first NPC 110 is in an activatable state, the processor 81 also moves the first NPC 110 according to the movement of the player character 100. In addition, when the player character 100 is not on the moving object and approaches the moving object, if a predetermined operation input is performed, the processor 81 moves the player character 100 on the moving object.
[0125] Next, processor 81 determines whether or not player character 100 is riding on a moving object (step S121). Specifically, processor 81 determines whether or not player character 100 is riding on a moving object by referring to the player character data.
[0126] When it is determined that the player character 100 is riding on the moving object (step S121: YES), the processor 81 determines whether or not the moving speed of the moving object on which the player character 100 is riding is equal to or higher than a predetermined threshold (step S122). Here, based on the result of step S104, it is determined whether or not the moving speed of the moving object on which the player character 100 is riding is equal to or higher than a threshold. Note that in step S122, if the moving object on which the player character 100 is riding is moving only in the Y-axis direction (up and down direction in the virtual space), it may be determined as NO even if the speed is equal to or higher than a predetermined threshold. That is, if the player character 100 is simply falling or rising on the moving object, it may be determined as NO in step S122. In this case, it is determined in step S122 whether or not the speed of the moving object on which the player character 100 is riding is equal to or higher than a threshold in the X-axis or Z-axis direction. Note that even if the player character 100 is simply falling or rising on the moving object, if the speed is equal to or higher than a threshold, it may be determined as YES in step S122.
[0127] When the moving speed of the moving object on which player character 100 is riding is less than the threshold (step S122: NO), processor 81 ends the processing shown in FIG.
[0128] When the moving speed of the moving object on which the player character 100 is riding is equal to or greater than the threshold (step S122: YES), the processor 81 determines whether the first NPC 110 is being fired (step S123). Specifically, the processor 81 determines whether the first NPC 110 is fired into the virtual space in step S143 described below and is moving in the virtual space. For example, the processor 81 determines whether a predetermined time has passed since the first NPC 110 was fired in step S143.
[0129] When it is determined that the first NPC 110 is firing (step S123: YES), the processor 81 ends the processing shown in FIG.
[0130] When it is determined that first NPC 110 is not firing (step S123: NO), processor 81 determines whether or not first NPC 110 has been placed on the moving object on which player character 100 is riding (step S124). When first NPC 110 has been placed (step S124: YES), processor 81 ends the process shown in FIG.
[0131] If the first NPC 110 is not placed on the moving object on which the player character 100 is riding (step S124: NO), the first NPC 110 is placed on the moving object on which the player character 100 is riding (step S125). For example, the processor 81 places the first NPC 110 at a predetermined position on the moving object on which the player character 100 is riding. Alternatively, the placement position of the first NPC 110 may be determined based on the moving direction of the moving object and the position of the player character 100 on the moving object. For example, the moving object may include a first moving object in which the placement position of the first NPC 110 is predetermined, and a second moving object in which the placement position of the first NPC 110 is not predetermined.
[0132] After step S125, processor 81 transitions first NPC 110 to an activatable state (step S126). As a result, first NPC 110 becomes spherical. Specifically, processor 81 saves data indicating that first NPC 110 is in an activatable state and data indicating that first NPC 110 is riding on a moving object, in the first NPC data. When the process of step S126 is performed, processor 81 ends the process shown in FIG. 23.
[0133] On the other hand, when it is determined that player character 100 is not riding on a moving object (step S121: NO), processor 81 determines whether first NPC 110 is in an inactivatable state (step S127).
[0134] When first NPC 110 is in an inactivatable state (step S127: YES), processor 81 determines whether or not there is a predetermined positional relationship indicating that player character 100 and first NPC 110 are close to each other (step S128). Specifically, processor 81 determines whether or not the distance between player character 100 and first NPC 110 is less than a predetermined threshold value.
[0135] When it is determined that the player character 100 and the first NPC 110 have a predetermined positional relationship (step S128: YES), the processor 81 determines whether or not it is within a predetermined limited period (step S129). For example, the predetermined limited period may be a period from when the first NPC 110 is launched into the virtual space in an activatable state until a certain time has elapsed. Alternatively, the predetermined limited period may be a period from when the first NPC 110 returns to the surroundings of the player character 100 after being launched until a certain time has elapsed.
[0136] If it is not within the predetermined limit period (step S129: NO), processor 81 determines whether or not the A button has been pressed, based on the operation data (step S130).
[0137] When the A button is pressed (step S130: YES), processor 81 transitions first NPC 110 to an activatable state (step S131). Specifically, processor 81 stores a value indicating that first NPC 110 is in an activatable state in the first NPC data. Processor 81 also places first NPC 110 in an activatable state in front of player character 100. As a result, a game image such as that shown in FIG. 7 is displayed, for example.
[0138] If the result of the determination in step S127 is NO, if the result of the determination in step S129 is YES, if the result of the determination in step S130 is NO, or if the process of step S131 has been executed, the processor 81 ends the process shown in FIG.
[0139] On the other hand, when it is determined that the player character 100 and the first NPC 110 do not have the predetermined positional relationship (step S128: NO), processor 81 determines whether or not the player character 100 and the second NPC 111 have a predetermined positional relationship indicating that they are close to each other (step S132). For example, processor 81 determines whether or not the distance between player character 100 and the second NPC 111 is less than a predetermined threshold value.
[0140] When it is determined that the player character 100 and the second NPC 111 have a predetermined positional relationship (step S132: YES), the processor 81 determines whether or not it is within a predetermined limit period (step S133). The predetermined limit period in step S133 may be set based on the activation of the second effect associated with the second NPC 111, and the predetermined limit period may be a period from the activation of the second effect until a certain time has elapsed.
[0141] If it is not within the predetermined limit period (step S133: NO), processor 81 determines whether or not the A button has been pressed, based on the operation data (step S134).
[0142] When the A button is pressed (step S134: YES), processor 81 activates a second effect associated with second NPC 111 (step S135). The second effect is an effect different from the first effect. The second effect may be, for example, an effect in which a special attack is performed when player character 100 performs a predetermined attack, or may be an effect in which a predetermined area is expanded.
[0143] If the result of the determination in step S132 is NO, if the result of the determination in step S133 is YES, if the result of the determination in step S134 is NO, or if the process of step S135 is executed, the processor 81 ends the process shown in FIG.
[0144] (First NPC control process) Next, the first NPC control process in step S105 will be described in detail below. Fig. 24 is a flowchart showing an example of the first NPC control process in step S105.
[0145] Processor 81 determines whether first NPC 110 is in an exercisable state (step S140).
[0146] When it is determined that the first NPC 110 is in an activatable state (step S140: YES), the processor 81 sets the firing direction of the first NPC 110 (step S141). By performing the process of step S141, the firing direction of the first NPC 110 is set, and the direction image 120 is displayed on the screen according to the firing direction. Specifically, as described with reference to FIG. 19, the processor 81 sets the rotation of the pitch direction of the firing direction of the first NPC 110 according to the inclination of the pitch direction in the virtual space of the surface on which the first NPC 110 is located. For example, when the first NPC 110 is located on the ground, the rotation of the pitch direction of the firing direction of the first NPC 110 is set according to the inclination of the ground. In addition, the processor 81 sets the yaw component of the firing direction of the first NPC 110 according to the line of sight direction of the virtual camera VC, as described with reference to FIG. 20.
[0147] Next, processor 81 determines whether or not a firing instruction has been given by the player based on the operation data (step S142). For example, processor 81 determines whether or not the A button has been pressed.
[0148] When a firing instruction is given (step S142: YES), processor 81 fires first NPC 110 into the virtual space (step S143). Specifically, processor 81 fires first NPC 110 at a predetermined speed in the firing direction set in step S141. Processor 81 also stores data indicating that first NPC 110 is being fired in the first NPC data. This puts first NPC 110 in a firing state and starts moving in the virtual space.
[0149] After step S143, processor 81 transitions first NPC 110 to the inactivatable state (step S144).
[0150] On the other hand, when it is determined that the first NPC 110 is not in an activation-ready state (step S140: NO), the processor 81 refers to the first NPC data and determines whether or not the first NPC 110 is firing (step S145).
[0151] If the first NPC 110 is firing (step S145: YES), the processor 81 updates the position of the first NPC 110 in the virtual space, and ends the processing shown in FIG.
[0152] When the first NPC 110 is not firing (step S145: NO), the processor 81 automatically controls the first NPC 110 (step S146). The process of step S146 is performed when the player character 100 and the first NPC 110 are placed on the terrain (ground, water surface, cliff face, etc.) of the virtual space. Specifically, the processor 81 moves the first NPC 110 in the virtual space and performs a predetermined action in the virtual space according to a predetermined algorithm. For example, the processor 81 moves the first NPC 110 in the virtual space so that the first NPC 110 follows the player character 100. The processor 81 also causes the first NPC 110 to perform a predetermined action. For example, the processor 81 controls the first NPC 110 to fight with the enemy character 200 as the predetermined action. Based on these controls, the processor 81 moves the first NPC 110 by a movement amount for one frame, and advances the animation of the first NPC 110 based on a predetermined action by one frame.
[0153] If the result of the determination in step S142 is NO, if the process of step S144 is performed, if the result of the determination in step S145 is YES, or if the process of step S146 is performed, the processor 81 ends the process shown in FIG.
[0154] (1st NPC firing process) Next, the first NPC firing process in step S107 will be described in detail. Fig. 25 is a flow chart showing an example of the first NPC firing process in step S107.
[0155] In step S160, processor 81 refers to the first NPC data to determine whether or not first NPC 110 is in a firing state. Here, it is determined whether first NPC 110 is fired into the virtual space in step S143 and is moving in the virtual space.
[0156] If first NPC 110 is not firing (step S160: NO), processor 81 ends the processing shown in FIG.
[0157] When the first NPC 110 is firing (step S160: YES), the processor 81 determines whether or not the fired first NPC 110 has hit the enemy character 200 (step S161). Specifically, the processor 81 determines whether or not the first NPC 110 has hit the enemy character 200 based on the position of the first NPC 110 and the position of the enemy character 200.
[0158] When the first NPC 110 hits an enemy character (step S161: YES), the processor 81 inflicts damage on the enemy character 200 (step S162). When the damage to the enemy character 200 exceeds a set threshold, the enemy character falls.
[0159] If the result of the determination in step S161 is NO, or if the process of step S162 has been performed, processor 81 determines whether or not first NPC 110 has hit an obstacle object (step S163). Specifically, processor 81 determines whether or not first NPC 110 has hit an obstacle object based on the position of first NPC 110 and the position of the obstacle object.
[0160] If first NPC 110 hits an obstacle object (step S163: YES), processor 81 destroys or removes the obstacle object (step S164).
[0161] If the determination in step S163 is NO, or if the process of step S164 has been performed, the processor 81 ends the process shown in FIG.
[0162] It should be noted that the processes shown in the above flowcharts are merely examples, and the order and contents of the processes may be changed as appropriate.
[0163] Although the present embodiment has been described above, the above embodiment is merely an example, and the following modifications may be made, for example.
[0164] (Modification) For example, in the above embodiment, when the player character 100 is on a moving object and the moving object is moving at a predetermined speed or faster, the first NPC 110 is moved and placed on the moving object. The first NPC 110 does not necessarily need to be in contact with the surface of the moving object. Also, the first NPC 110 may be in contact with the side or bottom surface of the moving object, not limited to the case where it is in contact with the top surface of the moving object. Such a case is also included in "placing the first NPC 110 on the moving object."
[0165] In the above embodiment, when the player character 100 is riding on a moving object and the moving object is moving at a predetermined speed or faster, the first NPC 110 is placed on the moving object. The predetermined speed may be, for example, "0". In other words, when the player character 100 is riding on a moving object, the first NPC 110 may be placed on the moving object even if the speed of the moving object is zero.
[0166] In the above embodiment, when the player character 100 gets on a moving object and the moving object is moving at a predetermined speed or faster, the first NPC 110 is displayed as getting on the moving object and placed on the moving object. In another embodiment, when the player character 100 gets on a moving object and the moving object is moving at a predetermined speed or faster, the first NPC 110 may be placed on the moving object instantaneously.
[0167] In the above embodiment, after the first NPC 110 is fired, the first NPC 110 is in a firing state, and then the first NPC 110 is displayed returning to the moving object, and the first NPC 110 is again in an activatable state. In another embodiment, after the first NPC 110 is fired, the first NPC 110 is in a firing state for a predetermined period of time, and then the first NPC 110 may be momentarily placed on the moving object and in an activatable state.
[0168] In the above embodiment, when the player character 100 is not on a moving object, it is determined whether or not the player character 100 is in a predetermined positional relationship with the first NPC 110 or the second NPC 111 (step S128 or step S132). Even when the player character 100 is on a moving object, if the first NPC 110 is in an inactivatable state, it is determined whether or not the player character 100 is in a predetermined positional relationship with the first NPC 110 or the second NPC 111, and if it is in the predetermined positional relationship, an effect related to the first NPC 110 or the second NPC 111 may be activated in response to pressing of the A button. That is, even when the player character 100 is on a moving object, if the first NPC 110 is not on the moving object, the player character 100 may approach the first NPC 110 or the second NPC 111 and press the A button to transition the first NPC 110 to an activation-enabled state (step S131) or activate the second effect (step S135). Specifically, if NO is determined in the above step S122, the process of step S127 may be executed.
[0169] In the above embodiment, when the first NPC 110 is in an actionable state, the first NPC 110 is launched into the virtual space as the first action, but the first NPC 110 may perform any action as the first action. For example, the first NPC 110 may perform an action to attack on the spot, or the first NPC 110 may perform an action to throw an object. The first NPC 110 may also perform an action that produces a predetermined effect in the virtual space (for example, an effect of increasing the attack power or defense power of the player character 100, an effect of decreasing the attack power or defense power of the enemy character 200, an effect of slowing down the movement of the enemy character 200, etc.).
[0170] In the above embodiment, the game is assumed in which the player controls the player character 100 and progresses while defeating the enemy character 200 automatically controlled by the processor 81. In another embodiment, for example, a game in which players fight each other while controlling their own player characters may be performed. In this case, when each player character is riding on a moving object and the moving object is moving, the above-mentioned first NPC 110 may be placed on the moving object and transition to an actionable state, and the first NPC 110 may perform the first action in response to the operation of each player.
[0171] Furthermore, the hardware configuration for playing the game is merely an example, and the game processing may be performed in any other hardware. For example, the game processing may be executed in any information processing device, such as a personal computer, a tablet terminal, a smartphone, or a server on the Internet. Furthermore, the game processing may be executed in an information processing system including a plurality of devices.
[0172] In addition, the configurations according to the above-described embodiments and the modifications thereof can be combined in any manner as long as they are not inconsistent with each other. Furthermore, the above is merely an example of the present invention, and various improvements and modifications other than those described above may be made. [Explanation of symbols]
[0173] 1. Game System 2 Main Unit 3 Left Controller 4 Right Controller 32 Left Analog Stick 53 A button 56 Y button 81 Processor 100 Player Characters 110 First NPC 111 Second NPC 120 Directional Images 200 Enemy characters 300 Vehicle Objects 310 Flying Objects
Claims
1. The computer of the information processing device moving a player character in a virtual space based on a first operation input; automatically moving a first non-player character within the virtual space; in a first case in which the player character and the first non-player character are in a predetermined positional relationship and a third operation input is further performed, and in a second case in which the first non-player character is placed on an object on which the player character is riding, transitioning the first non-player character to an action-enabled state in which the first non-player character can perform a first action; when the first non-player character is in the actionable state, causing the first non-player character to perform the first action of firing the first non-player character in a predetermined direction in response to a second operation input, transitioning the first non-player character from the actionable state to an inactionable state in which the first action cannot be activated, and maintaining the first non-player character in the inactionable state until a predetermined time has elapsed; A game program that causes damage to an enemy character in the virtual space when the fired first non-player character hits the enemy character, or destroys or removes a predetermined obstacle object in the virtual space when the fired first non-player character hits the obstacle object.
2. The computer, The game program according to claim 1 , wherein the predetermined direction is set based at least on a line-of-sight direction of a virtual camera at a timing when the second operation input is performed.
3. The computer, The game program according to claim 1 , wherein the predetermined direction is set based at least on the orientation of the object at the timing when the second operation input is performed.
4. The computer further comprises: automatically moving a second non-player character within the virtual space; 4. The game program according to claim 1, wherein a second effect is produced in response to the second operation input when the player character and the second non-player character are in a predetermined positional relationship.
5. An information processing system including a processor, the processor comprising: moving a player character in a virtual space based on a first operation input; automatically moving a first non-player character within the virtual space; in a first case in which the player character and the first non-player character are in a predetermined positional relationship and a third operation input is further performed, and in a second case in which the first non-player character is placed on an object on which the player character is riding, transitioning the first non-player character to an action-enabled state in which the first non-player character can perform a first action; when the first non-player character is in the actionable state, causing the first non-player character to perform the first action of firing the first non-player character in a predetermined direction in response to a second operation input, transitioning the first non-player character from the actionable state to an inactionable state in which the first action cannot be activated, and maintaining the first non-player character in the inactionable state until a predetermined time has elapsed; An information processing system in which, when the fired first non-player character hits an enemy character in the virtual space, the enemy character is damaged, or, when the fired first non-player character hits a predetermined obstacle object in the virtual space, the obstacle object is destroyed or removed.
6. The processor: The information processing system according to claim 5 , wherein the predetermined direction is set based at least on a line-of-sight direction of a virtual camera at a timing when the second operation input is performed.
7. The processor: The information processing system according to claim 5 , wherein the predetermined direction is set based at least on the orientation of the object at the timing when the second operation input is performed.
8. The processor further comprises: automatically moving a second non-player character within the virtual space; 8. The information processing system according to claim 5, wherein a second effect is produced in response to the second operation input when the player character and the second non-player character are in a predetermined positional relationship.
9. An information processing device including a processor, the processor comprising: moving a player character in a virtual space based on a first operation input; automatically moving a first non-player character within the virtual space; in a first case in which the player character and the first non-player character are in a predetermined positional relationship and a third operation input is further performed, and in a second case in which the first non-player character is placed on an object on which the player character is riding, transitioning the first non-player character to an action-enabled state in which the first non-player character can perform a first action; when the first non-player character is in the actionable state, causing the first non-player character to perform the first action of firing the first non-player character in a predetermined direction in response to a second operation input, transitioning the first non-player character from the actionable state to an inactionable state in which the first action cannot be activated, and maintaining the first non-player character in the inactionable state until a predetermined time has elapsed; An information processing device that, when the fired first non-player character hits an enemy character in the virtual space, causes damage to the enemy character, or, when the fired first non-player character hits a predetermined obstacle object in the virtual space, destroys or removes the obstacle object.
10. An information processing method performed in an information processing system, moving a player character in a virtual space based on a first operation input; automatically moving a first non-player character within the virtual space; a step of transitioning the first non-player character to an actionable state in which the first non-player character can perform a first action in a first case in which the player character and the first non-player character are in a predetermined positional relationship and a third operation input is further performed, and in a second case in which the first non-player character is placed on an object on which the player character is riding; a step of causing the first non-player character to perform the first action of firing the first non-player character in a predetermined direction in response to a second operation input when the first non-player character is in the activation-enabled state, transitioning the first non-player character from the activation-enabled state to an inactivation-disabled state in which the first action cannot be activated, and maintaining the first non-player character in the inactivation-disabled state until a predetermined time has elapsed; and a step of causing damage to an enemy character in the virtual space when the fired first non-player character hits the enemy character, or destroying or removing a predetermined obstacle object in the virtual space when the fired first non-player character hits the obstacle object.