Game Program
Patent Information
- Application Number
- JP2020209990
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2020-12-18
- Publication Date
- 2025-02-25
- Estimated Expiration
- 2040-12-18
Smart Images

Figure 0007634982000001 
Figure 0007634982000002 
Figure 0007634982000003
Abstract
Description
[Technical field]
[0001] The present invention relates to a game program. M Regarding. [Background technology]
[0002] Conventionally, games that use a map image corresponding to a real map in a virtual space are known. For example, Non-Patent Document 1 describes a game in which a player and a character in a virtual space move together on a map image in the virtual space based on position information in the real world. [Prior art documents] [Non-patent literature]
[0003] [Non-Patent Document 1] [Pokemon GO official website], [online], searched on November 19, 2020, URL, https: / / www.pokemongo.jp / Summary of the Invention [Problem to be solved by the invention]
[0004] However, the map image in the game described in Non-Patent Document 1 was a two-dimensional flat image. Therefore, it did not match the actual terrain corresponding to the character's position, and the user could not have a realistic feeling. In addition, only the straight-line distance to the point where the mission is completed (for example, the destination) can be confirmed and understood from the game screen, and it is not possible to provide the fun of considering the character's movement route taking other factors into consideration, and there is a risk that it will become monotonous.
[0005] The present invention has been devised in view of the above circumstances, and its object is to provide a game program that can provide a variety of gameplay by giving a realistic feeling and improving the fun of considering a moving route. M The aim is to provide. [Means for solving the problem]
[0006] According to one aspect of an embodiment of the present disclosure, a game program includes: of A map image of a part of a map image reflecting a terrain having a difference in elevation is displayed in a display area, and a character object is displayed at a predetermined position in the display area. Display means and identifying motion information according to the user's motion. Specific means and , functioning as Let, Display means The area of the map image to be displayed in the display area Specific means In a manner according to the operation information specified by change By doing so, it is possible to display a character object at a predetermined position as if it were moving along the topography of the map image. Effect of the Invention
[0007] According to the present invention, it is possible to provide the user with a realistic sensation and to provide the fun of taking into account elevation differences when planning a route to travel, thereby realizing a variety of game characteristics. [Brief description of the drawings]
[0008] [Figure 1] FIG. 1 is a diagram showing an example of an overview of a system according to an embodiment. [Diagram 2] FIG. 2 is a block diagram showing an example of a hardware configuration of a user terminal according to an embodiment. [Diagram 3] FIG. 2 is a block diagram showing an example of a hardware configuration of a server according to an embodiment. [Figure 4] 1 is a block diagram showing an example of a hardware configuration of a game playing terminal according to an embodiment. [Diagram 5] FIG. 2 is a block diagram showing an example of a hardware configuration of a distribution terminal according to an embodiment. [Figure 6] FIG. 2 is a block diagram showing an example of a functional configuration of a user terminal, a server, and an HMD set according to an embodiment. [Figure 7]FIG. 2 is a block diagram showing an example of a functional configuration of a distribution terminal according to an embodiment. [Figure 8] 11 is a flowchart illustrating a part of a process executed in a user terminal and a game playing terminal according to an embodiment. [Figure 9] 1A to 1C are diagrams illustrating an example of a virtual space provided to a player and a field of view image viewed by the player according to an embodiment. [Figure 10] A figure showing an example of a virtual space provided to a user of a user terminal and a field of view image viewed by the user according to one embodiment. [Figure 11] FIG. 11 is a diagram showing another example of a field of view image visually recognized by a user of a user terminal. [Figure 12] A figure showing yet another example of a field of view image visually recognized by a user of a user terminal. [Figure 13] 1 is a flowchart illustrating a part of a process executed in a game playing terminal according to an embodiment. [Figure 14] 10 is a flowchart illustrating a part of a process executed in a user terminal according to an embodiment. [Figure 15] 11 is a flowchart illustrating a part of a process executed in a server according to an embodiment. [Figure 16] FIG. 2 illustrates an example of a list of users who have joined a game, according to one embodiment. [Figure 17] FIG. 13 is a diagram showing an example of a display screen during a movement game that is displayed in the display area of the touch screen. [Figure 18] FIG. 13 is a diagram showing an example of a display when the altitude of a moving character object reaches a predetermined value. [Figure 19] 13 is a flowchart showing an example of a movement game process executed on a user terminal. [Figure 20] 13 is a flowchart showing an example of a location information game process executed on a user terminal. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0009] The system according to the present disclosure is a system for providing a game to multiple users. The system will be described below with reference to the drawings. Note that the present invention is not limited to these examples, but is indicated by the claims, and it is intended that all modifications within the meaning and scope equivalent to the claims are included in the present invention. In the following description, the same elements in the description of the drawings are given the same reference numerals, and redundant description will not be repeated.
[0010] <System 1 Operation Overview> FIG. 1 is a diagram showing an overview of a system 1 according to this embodiment. The system 1 includes a plurality of user terminals 100 (computer, information processing device), a server 200, a game play terminal 300 (external device, second external device), and a distribution terminal 400 (external, first external device). Note that in FIG. 1, user terminals 100A to 100C, in other words, three user terminals 100, are shown as an example of the plurality of user terminals 100, but the number of user terminals 100 is not limited to the example shown. In this embodiment, when there is no need to distinguish between the user terminals 100A to C, they are referred to as "user terminals 100". The user terminals 100, the game play terminals 300, and the distribution terminals 400 are connected to the server 200 via a network 2. The network 2 is composed of the Internet and various mobile communication systems constructed by wireless base stations not shown. Examples of such mobile communication systems include so-called 3G and 4G mobile communication systems, LTE (Long Term Evolution), and wireless networks (such as Wi-Fi (registered trademark)) that can be connected to the Internet via a predetermined access point.
[0011] (Game Overview) In this embodiment, a game that is mainly played by a user of a game play terminal 300 will be described as an example of a game provided by the system 1 (hereinafter, this game). Hereinafter, the user of the game play terminal 300 will be referred to as a "player". As an example, the player (actor) progresses through the game by operating a character that appears in the game. In addition, in this game, the user of the user terminal 100 plays a role of supporting the player's progress through the game. Details of this game will be described later. Note that the game provided by the system 1 may be a game in which multiple users participate, and is not limited to this example.
[0012] (Game Play Terminal 300) The game play terminal 300 progresses the game in response to input operations by the player. Furthermore, the game play terminal 300 sequentially distributes information generated by the player's game play (hereinafter, game progress information) to the server 200 in real time.
[0013] (Server 200) The server 200 transmits game progress information (second data) received in real time from the game play terminal 300 to the user terminal 100. The server 200 also mediates the transmission and reception of various types of information between the user terminal 100, the game play terminal 300, and the distribution terminal 400.
[0014] (Distribution terminal 400) The distribution terminal 400 generates action instruction data (first data) in response to an input operation by the user of the distribution terminal 400, and distributes the action instruction data to the user terminal 100 via the server 200. The action instruction data is data for playing a moving image on the user terminal 100, and specifically, is data for causing a character appearing in the moving image to perform a movement.
[0015] In this embodiment, as an example, the user of the distribution terminal 400 is a player of the game. Also, as an example, the video played on the user terminal 100 based on the action instruction data is a video of a character operated by the player in the game moving. The "movement" refers to moving at least a part of the character's body, and includes speaking. For this reason, the action instruction data according to this embodiment includes, for example, voice data for making the character speak, and motion data for moving the character's body.
[0016] As an example, the action instruction data is transmitted to the user terminal 100 after the game ends. Details of the action instruction data and the video played based on the action instruction data will be described later.
[0017] (User terminal 100) The user terminal 100 receives game progress information in real time, and generates and displays a game screen using the information. In other words, the user terminal 100 reproduces the game screen of the game being played by the player by real-time rendering. This allows the user of the user terminal 100 to view the same game screen as the player views while playing the game, at approximately the same timing as the player.
[0018] Furthermore, the user terminal 100 generates information for assisting the player in progressing through the game in response to input operations by the user, and transmits this information to the game playing terminal 300 via the server 200. The information will be described in detail later.
[0019] Furthermore, the user terminal 100 receives motion instruction data from the distribution terminal 400, and generates and plays back a moving image (video) using the motion instruction data. In other words, the user terminal 100 renders and plays back the motion instruction data.
[0020] <Hardware configuration of System 1> Fig. 2 is a diagram showing the hardware configuration of a user terminal 100. Fig. 3 is a diagram showing the hardware configuration of a server 200. Fig. 4 is a diagram showing the hardware configuration of a game playing terminal 300. Fig. 5 is a diagram showing the hardware configuration of a streaming terminal 400.
[0021] (User terminal 100) In this embodiment, as an example, the user terminal 100 is realized as a smartphone, but the user terminal 100 is not limited to a smartphone. For example, the user terminal 100 may be realized as a feature phone, a tablet computer, a laptop computer (a so-called notebook computer), or a desktop computer. The user terminal 100 may also be a game device suitable for playing games.
[0022] 2, the user terminal 100 includes a processor 10, a memory 11, a storage 12, a communication interface (IF) 13, an input / output IF 14, a touch screen 15 (display unit, display area), a camera 17, and a distance measurement sensor 18. These components of the user terminal 100 are electrically connected to each other via a communication bus. Note that the user terminal 100 may include an input / output IF 14 to which a display (display unit) configured separately from the user terminal 100 main body can be connected instead of or in addition to the touch screen 15.
[0023] 2, the user terminal 100 may be configured to be able to communicate with one or more controllers 1020. The controller 1020 establishes communication with the user terminal 100 in accordance with a communication standard such as Bluetooth (registered trademark). The controller 1020 may have one or more buttons, etc., and transmits output values based on user input operations on the buttons, etc., to the user terminal 100. The controller 1020 may also have various sensors, such as an acceleration sensor and an angular velocity sensor, and transmits output values of the various sensors to the user terminal 100.
[0024] Instead of or in addition to the user terminal 100 being equipped with the camera 17 and the distance measurement sensor 18, the controller 1020 may have the camera 17 and the distance measurement sensor 18.
[0025] For example, at the start of a game, the user terminal 100 desirably causes the user using the controller 1020 to input user identification information, such as the user's name or login ID, via the controller 1020. This enables the user terminal 100 to link the controller 1020 with the user, and to identify which user the output value belongs to based on the source (controller 1020) of the received output value.
[0026] When the user terminal 100 communicates with multiple controllers 1020, each user holds a controller 1020, and the single user terminal 100 can realize a multiplay without communicating with other devices such as the server 200 via the network 2. Also, the user terminals 100 can realize a multiplay locally by connecting to each other via a wireless standard such as a wireless LAN (Local Area Network) standard (connecting to communicate without going through the server 200). When the above-mentioned multiplay is realized locally by a single user terminal 100, the user terminal 100 may further include at least a part of various functions of the server 200, which will be described later. Also, when the above-mentioned multiplay is realized locally by multiple user terminals 100, the multiple user terminals 100 may include various functions of the server 200, which will be described later, in a distributed manner.
[0027] Even when the above-mentioned multiplay is realized locally, the user terminal 100 may communicate with the server 200. For example, information indicating a play result such as the score or win / loss in a certain game may be associated with user identification information and transmitted to the server 200.
[0028] Furthermore, the controller 1020 may be configured to be detachable from the user terminal 100. In this case, a coupling unit for the controller 1020 may be provided on at least one surface of the housing of the user terminal 100. When the user terminal 100 and the controller 1020 are coupled to each other via the coupling unit by a wire, the user terminal 100 and the controller 1020 transmit and receive signals via the wire.
[0029] 2, the user terminal 100 may accept the attachment of a storage medium 1030 such as an external memory card via the input / output IF 14. This allows the user terminal 100 to read programs and data recorded in the storage medium 1030. The program recorded in the storage medium 1030 is, for example, a game program.
[0030] The user terminal 100 may store in the memory 11 of the user terminal 100 a game program acquired by communicating with an external device such as the server 200, or may store in the memory 11 a game program acquired by reading it from the storage medium 1030.
[0031] As described above, the user terminal 100 includes the communication IF 13, the input / output IF 14, the touch screen 15, the camera 17, and the distance measurement sensor 18 as an example of a mechanism for inputting information to the user terminal 100. Each of the above-mentioned units as an input mechanism can be considered as an operation unit configured to receive an input operation by the user. The communication IF 13 transmits the identified real-world position information to the server 200 using information from a GPS (Global Positioning System) sensor, a wireless network system, and the like provided in the user terminal 100.
[0032] For example, when the operation unit is composed of at least one of the camera 17 and the distance measuring sensor 18, the operation unit detects an object 1010 in the vicinity of the user terminal 100 and identifies an input operation from the detection result of the object. As an example, a user's hand, a marker of a predetermined shape, or the like is detected as the object 1010, and the input operation is identified based on the color, shape, movement, or type of the object 1010 obtained as the detection result. More specifically, when the user's hand is detected from an image captured by the camera 17, the user terminal 100 identifies a gesture (a series of movements of the user's hand) detected based on the captured image as the user's input operation and accepts it. Note that the captured image may be a still image or a video.
[0033] Alternatively, when the operation unit is configured with the touch screen 15, the user terminal 100 identifies and accepts a user operation performed on the input unit 151 of the touch screen 15 as the user's input operation. Alternatively, when the operation unit is configured with the communication IF 13, the user terminal 100 identifies and accepts a signal (e.g., an output value) transmitted from the controller 1020 as the user's input operation. Alternatively, when the operation unit is configured with the input / output IF 14, the user terminal 100 identifies and accepts a signal output from an input device (not shown) connected to the input / output IF 14 and different from the controller 1020 as the user's input operation.
[0034] (Server 200) The server 200 may be, for example, a general-purpose computer such as a workstation or a personal computer. The server 200 includes a processor 20, a memory 21, a storage 22, a communication IF 23, an input / output IF 24, and a distance determination unit (not shown). These components of the server 200 are electrically connected to each other by a communication bus.
[0035] (Game Play Terminal 300) The game play terminal 300 may be, for example, a general-purpose computer such as a personal computer. The game play terminal 300 comprises a processor 30, a memory 31, a storage 32, a communication IF 33, and an input / output IF 34. These components of the game play terminal 300 are electrically connected to each other via a communication bus.
[0036] As shown in FIG. 4, the game play terminal 300 according to the present embodiment is, for example, included in an HMD (Head Mounted Display) set 1000. In other words, it can be expressed that the HMD set 1000 is included in the system 1, and it can also be expressed that the player plays the game using the HMD set 1000. Note that the device for the player to play the game is not limited to the HMD set 1000. For example, the device may be any device that allows the player to virtually experience the game. The device may be realized as a smartphone, a feature phone, a tablet computer, a laptop computer (a so-called notebook computer), or a desktop computer. The device may also be a game device suitable for game play.
[0037] In addition to the game playing terminal 300, the HMD set 1000 includes an HMD 500, an HMD sensor 510, a motion sensor 520, a display 530, and a controller 540. The HMD 500 includes a monitor 51, a gaze sensor 52, a first camera 53, a second camera 54, a microphone 55, and a speaker 56. The controller 540 may include the motion sensor 520.
[0038] The HMD500 is worn on the head of a player and can provide the player with a virtual space during operation. More specifically, the HMD500 displays an image for the right eye and an image for the left eye on a monitor 51. When each eye of the player views the respective image, the player can recognize the image as a three-dimensional image based on the parallax between the two eyes. The HMD500 can include both a so-called head-mounted display equipped with a monitor and a head-mounted device to which a terminal having a monitor such as a smartphone can be attached.
[0039] The monitor 51 is realized, for example, as a non-transmissive display device. In one aspect, the monitor 51 is disposed on the main body of the HMD 500 so as to be located in front of both eyes of the player. Therefore, when the player visually recognizes the three-dimensional image displayed on the monitor 51, the player can be immersed in the virtual space. In one aspect, the virtual space includes, for example, images of a background, an object that the player can operate, and a menu that the player can select. In one aspect, the monitor 51 can be realized as a liquid crystal monitor or an organic EL (Electro Luminescence) monitor provided in a so-called smartphone or other information display terminal.
[0040] In another aspect, the monitor 51 may be realized as a transmissive display device. In this case, the HMD 500 may be an open type such as a glasses type, instead of a closed type that covers the player's eyes as shown in FIG. 1. The transmissive monitor 51 may be temporarily configurable as a non-transmissive display device by adjusting the transmittance. The monitor 51 may include a configuration that simultaneously displays a part of an image that constitutes a virtual space and the real space. For example, the monitor 51 may display an image of the real space captured by a camera mounted on the HMD 500, or may make the real space visible by setting the transmittance of a part of the monitor 51 high.
[0041] In one aspect, the monitor 51 may include a sub-monitor for displaying an image for the right eye and a sub-monitor for displaying an image for the left eye. In another aspect, the monitor 51 may be configured to integrally display an image for the right eye and an image for the left eye. In this case, the monitor 51 includes a high-speed shutter. The high-speed shutter operates to alternately display an image for the right eye and an image for the left eye so that the image is recognized by only one of the eyes.
[0042] In a certain aspect, the HMD 500 includes a plurality of light sources (not shown). Each light source is realized, for example, by an LED (Light Emitting Diode) that emits infrared rays. The HMD sensor 510 has a position tracking function for detecting the movement of the HMD 500. More specifically, the HMD sensor 510 reads a plurality of infrared rays emitted by the HMD 500 and detects the position and inclination of the HMD 500 in the real space.
[0043] In another aspect, the HMD sensor 510 may be realized by a camera. In this case, the HMD sensor 510 can detect the position and inclination of the HMD 500 by performing image analysis processing using image information of the HMD 500 output from the camera.
[0044] In another aspect, the HMD 500 may include a sensor (not shown) as a position detector instead of or in addition to the HMD sensor 510. The HMD 500 may detect the position and tilt of the HMD 500 itself using the sensor. For example, if the sensor is an angular velocity sensor, a geomagnetic sensor, or an acceleration sensor, the HMD 500 may detect the position and tilt of the HMD 500 itself using any of these sensors instead of the HMD sensor 510. As an example, if the sensor included in the HMD 500 is an angular velocity sensor, the angular velocity sensor detects the angular velocity of the HMD 500 around three axes in real space over time. The HMD 500 calculates the change in angle of the HMD 500 around the three axes over time based on each angular velocity, and further calculates the tilt of the HMD 500 based on the change in angle over time.
[0045] The gaze sensor 52 detects the direction in which the gaze of the player's right eye and left eye are directed. That is, the gaze sensor 52 detects the gaze of the player. The detection of the gaze direction is realized, for example, by a known eye tracking function. The gaze sensor 52 is realized by a sensor having the eye tracking function. In a certain aspect, the gaze sensor 52 preferably includes a sensor for the right eye and a sensor for the left eye. The gaze sensor 52 may be, for example, a sensor that irradiates the right eye and left eye of the player with infrared light and detects the rotation angle of each eyeball by receiving reflected light from the cornea and iris in response to the irradiated light. The gaze sensor 52 can detect the gaze of the player based on each detected rotation angle.
[0046] The first camera 53 photographs the lower part of the player's face. More specifically, the first camera 53 photographs the player's nose, mouth, etc. The second camera 54 photographs the player's eyes, eyebrows, etc. The housing on the player's side of the HMD 500 is defined as the inside of the HMD 500, and the housing on the opposite side of the HMD 500 from the player is defined as the outside of the HMD 500. In one aspect, the first camera 53 may be disposed outside the HMD 500, and the second camera 54 may be disposed inside the HMD 500. Images generated by the first camera 53 and the second camera 54 are input to the game play terminal 300. In another aspect, the first camera 53 and the second camera 54 may be realized as a single camera, and the player's face may be photographed by this single camera.
[0047] The microphone 55 converts the player's speech into an audio signal (electrical signal) and outputs it to the game play terminal 300. The speaker 56 converts the audio signal into sound and outputs it to the player. In another aspect, the HMD 500 may include earphones instead of the speaker 56.
[0048] The controller 540 is connected to the game play terminal 300 by wire or wirelessly. The controller 540 accepts input of commands from the player to the game play terminal 300. In one aspect, the controller 540 is configured to be held by the player. In another aspect, the controller 540 is configured to be attached to a part of the player's body or clothing. In yet another aspect, the controller 540 may be configured to output at least one of vibration, sound, and light based on a signal transmitted from the game play terminal 300. In yet another aspect, the controller 540 accepts an operation from the player to control the position and movement of an object placed in a virtual space.
[0049] In one aspect, the controller 540 includes a plurality of light sources. Each light source is realized, for example, by an LED that emits infrared rays. The HMD sensor 510 has a position tracking function. In this case, the HMD sensor 510 reads a plurality of infrared rays emitted by the controller 540 and detects the position and tilt of the controller 540 in the real space. In another aspect, the HMD sensor 510 may be realized by a camera. In this case, the HMD sensor 510 can detect the position and tilt of the controller 540 by performing an image analysis process using image information of the controller 540 output from the camera.
[0050] In one aspect, the motion sensor 520 is attached to the player's hand and detects the movement of the player's hand. For example, the motion sensor 520 detects the rotation speed, number of rotations, etc. of the hand. The detected signal is sent to the game play terminal 300. The motion sensor 520 is provided, for example, in the controller 540. In one aspect, the motion sensor 520 is provided, for example, in the controller 540 configured to be held by the player. In another aspect, for safety in the real space, the controller 540 is attached to something that is not easily blown away by being worn on the player's hand, such as a glove type. In yet another aspect, a sensor that is not worn by the player may detect the movement of the player's hand. For example, a signal from a camera that captures the player may be input to the game play terminal 300 as a signal representing the player's action. The motion sensor 520 and the game play terminal 300 are connected to each other wirelessly, for example. In the case of wireless communication, the communication form is not particularly limited, and for example, Bluetooth or other known communication methods are used.
[0051] The display 530 displays an image similar to the image displayed on the monitor 51. This allows users other than the player wearing the HMD 500 to view the same image as the player. The image displayed on the display 530 does not need to be a three-dimensional image, and may be an image for the right eye or an image for the left eye. Examples of the display 530 include a liquid crystal display and an organic EL monitor.
[0052] The game play terminal 300 moves the character operated by the player based on various information acquired from each part of the HMD 500, the controller 540, and the motion sensor 520, and progresses the game. The "movement" here includes moving each part of the body, changing posture, changing facial expression, moving, speaking, touching or moving objects arranged in the virtual space, and using weapons, tools, etc. held by the character. That is, in this game, when the player moves each part of the body, the character also moves each part of the body in the same way as the player. Also, in this game, the character speaks the contents of what the player has spoken. In other words, in this game, the character is an avatar object that acts as an alter ego of the player. As an example, at least a part of the character's movement may be executed by input to the controller 540 by the player.
[0053] In this embodiment, the motion sensors 520 are attached to the player's hands, both feet, waist, and head, as an example. The motion sensors 520 attached to the player's hands may be provided in the controller 540, as described above. The motion sensor 520 attached to the player's head may be provided in the HMD 500. The motion sensors 520 may further be attached to the user's elbows and knees. By increasing the number of motion sensors 520 attached to the player, the player's movements can be more accurately reflected in the character. Also, instead of attaching the motion sensors 520 to various parts of the body, the player may wear a suit to which one or more motion sensors 520 are attached. In other words, the method of motion capture is not limited to the example using the motion sensor 520.
[0054] (Distribution terminal 400) The distribution terminal 400 may be a mobile terminal such as a smartphone, a PDA (Personal Digital Assistant), or a tablet computer, etc. The distribution terminal 400 may also be a so-called stationary terminal such as a desktop personal computer.
[0055] 5, the distribution terminal 400 includes a processor 40, a memory 41, a storage 42, a communication IF 43, an input / output IF 44, and a touch screen 45. Note that instead of or in addition to the touch screen 45, the distribution terminal 400 may include an input / output IF 44 to which a display (display unit) configured separately from the distribution terminal 400 main body can be connected.
[0056] The controller 1021 may have a physical input mechanism such as one or more buttons, levers, sticks, wheels, etc. The controller 1021 transmits to the streaming terminal 400 an output value based on an input operation input to the input mechanism by an operator of the streaming terminal 400 (a player in this embodiment). The controller 1021 may also have various sensors such as an acceleration sensor and an angular velocity sensor, and may transmit output values of the various sensors to the streaming terminal 400. The above-mentioned output values are received by the streaming terminal 400 via the communication IF 43.
[0057] The broadcasting terminal 400 may include a camera and a distance measuring sensor (both not shown). Instead of or in addition to the broadcasting terminal 400, the controller 1021 may include a camera and a distance measuring sensor.
[0058] As described above, the streaming terminal 400 includes the communication IF 43, the input / output IF 44, and the touch screen 45 as an example of a mechanism for inputting information to the streaming terminal 400. Each of the above-mentioned units as an input mechanism can be considered as an operation unit configured to receive an input operation by a user.
[0059] When the operation unit is configured with touch screen 45, distribution terminal 400 identifies and accepts a user operation performed on input unit 451 of touch screen 45 as a user input operation. Alternatively, when the operation unit is configured with communication IF 43, distribution terminal 400 identifies and accepts a signal (e.g., an output value) transmitted from controller 1021 as a user input operation. Alternatively, when the operation unit is configured with input / output IF 44, distribution terminal 400 identifies and accepts a signal output from an input device (not shown) connected to the input / output IF 44 as a user input operation.
[0060] <Hardware components of each device> Processors 10, 20, 30, and 40 control the overall operation of user terminal 100, server 200, game play terminal 300, and distribution terminal 400, respectively. Processors 10, 20, 30, and 40 include a CPU (Central Processing Unit), an MPU (Micro Processing Unit), and a GPU (Graphics Processing Unit). Processors 10, 20, 30, and 40 read programs from storages 12, 22, 32, and 42, respectively, which will be described later. Then, processors 10, 20, 30, and 40 load the read programs into memories 11, 21, 31, and 41, which will be described later, respectively. Processors 10, 20, and 30 execute the loaded programs.
[0061] The memories 11, 21, 31, and 41 are main storage devices. The memories 11, 21, 31, and 41 are composed of storage devices such as a ROM (Read Only Memory) and a RAM (Random Access Memory). The memory 11 provides a working area for the processor 10 by temporarily storing a program and various data read by the processor 10 from a storage 12 described later. The memory 11 also temporarily stores various data generated while the processor 10 is operating according to the program. The memory 21 provides a working area for the processor 20 by temporarily storing various programs and data read by the processor 20 from a storage 22 described later. The memory 21 also temporarily stores various data generated while the processor 20 is operating according to the program. The memory 31 provides a working area for the processor 30 by temporarily storing various programs and data read by the processor 30 from a storage 32 described later. The memory 31 also temporarily stores various data generated while the processor 30 is operating according to the program. The memory 41 provides a working area for the processor 40 by temporarily storing a program and various data that the processor 40 reads from the storage 42 (described later). The memory 41 also temporarily stores various data that the processor 40 generates while it is operating according to the program.
[0062] In this embodiment, the program executed by the processors 10 and 30 may be a game program of the game. In this embodiment, the program executed by the processor 40 may be a distribution program for realizing distribution of action instruction data. Furthermore, the processor 10 may further execute a viewing program for realizing playback of a video.
[0063] In this embodiment, the program executed by the processor 20 may be at least one of the above-mentioned game program, distribution program, and viewing program. The processor 20 executes at least one of the game program, distribution program, and viewing program in response to a request from at least one of the user terminal 100, the game play terminal 300, and the distribution terminal 400. The distribution program and the viewing program may be executed in parallel.
[0064] That is, the game program may be a program that realizes a game through cooperation between the user terminal 100, the server 200, and the game playing terminal 300. The distribution program may be a program that realizes distribution of action instruction data through cooperation between the server 200 and the distribution terminal 400. The viewing program may be a program that realizes playback of a video through cooperation between the user terminal 100 and the server 200.
[0065] The storages 12, 22, 32, and 42 are auxiliary storage devices. The storages 12, 22, 32, and 42 are configured with storage devices such as flash memory or HDDs (Hard Disk Drives). The storages 12 and 32 store, for example, various data related to games. The storage 42 stores various data related to the distribution of action instruction data. The storage 12 stores various data related to the playback of moving images. The storage 22 may store at least a portion of the various data related to games, the distribution of action instruction data, and the playback of moving images.
[0066] The communication IFs 13, 23, 33, and 43 respectively control the transmission and reception of various data in the user terminal 100, the server 200, the game playing terminal 300, and the distribution terminal 400. The communication IFs 13, 23, 33, and 43 control, for example, communication via a wireless LAN (Local Area Network), Internet communication via a wired LAN, a wireless LAN, or a mobile phone network, and communication using short-range wireless communication, etc.
[0067] The input / output IFs 14, 24, 34, and 44 are interfaces for the user terminal 100, the server 200, the game playing terminal 300, and the distribution terminal 400 to receive data input and output data, respectively. The input / output IFs 14, 24, 34, and 44 may input and output data via a Universal Serial Bus (USB) or the like. The input / output IFs 14, 24, 34, and 44 may include physical buttons, a camera, a microphone, a speaker, a mouse, a keyboard, a display, a stick, a lever, and the like. The input / output IFs 14, 24, 34, and 44 may also include a connection section for transmitting and receiving data to and from peripheral devices.
[0068] The touch screen 15 is an electronic component that combines an input unit 151 and a display unit 152 (display). The touch screen 45 is an electronic component that combines an input unit 451 and a display unit 452. The input units 151 and 451 are, for example, touch-sensitive devices, and are configured, for example, by a touchpad. The display units 152 and 452 are, for example, liquid crystal displays, organic EL (Electro-Luminescence) displays, or the like.
[0069] The input units 151 and 451 have a function of detecting a position where a user operation (mainly a physical contact operation such as a touch operation, a slide operation, a swipe operation, and a tap operation) is input on the input surface, and transmitting information indicating the position as an input signal. The input units 151 and 451 may be provided with a touch sensing unit (not shown). The touch sensing unit may adopt any type such as a capacitive type or a resistive film type.
[0070] Although not shown, the user terminal 100 and the broadcasting terminal 400 may each include one or more sensors for identifying the holding posture of the user terminal 100 and the broadcasting terminal 400. The sensors may be, for example, an acceleration sensor or an angular velocity sensor.
[0071] When the user terminal 100 and the distribution terminal 400 are equipped with sensors, the processors 10 and 40 can respectively identify the holding orientation of the user terminal 100 and the distribution terminal 400 from the output of the sensor and perform processing according to the holding orientation. For example, when the user terminal 100 and the distribution terminal 400 are held vertically, the processors 10 and 40 can respectively perform a portrait screen display in which a vertically elongated image is displayed on the display units 152 and 452. On the other hand, when the user terminal 100 and the distribution terminal 400 are held horizontally, the processors 10 and 40 can respectively perform a landscape screen display in which a horizontally elongated image is displayed on the display unit. In this way, the processors 10 and 40 can respectively switch between a portrait screen display and a landscape screen display depending on the holding orientation of the user terminal 100 and the distribution terminal 400.
[0072] <Functional configuration of System 1> 6 is a block diagram showing the functional configuration of the user terminal 100, the server 200, and the HMD set 1000 included in the system 1. FIG 7 is a block diagram showing the functional configuration of the distribution terminal 400 shown in FIG.
[0073] The user terminal 100 functions as an input device that accepts input operations by the user, and as an output device that outputs images and sounds of the game. The user terminal 100 functions as a control unit 110 and a storage unit 120 through cooperation of the processor 10, memory 11, storage 12, communication IF 13, input / output IF 14, touch screen 15, etc.
[0074] The server 200 has a function of mediating transmission and reception of various information among the user terminal 100, the HMD set 1000, and the distribution terminal 400. The server 200 functions as a control unit 210 and a storage unit 220 through cooperation of the processor 20, the memory 21, the storage 22, the communication IF 23, the input / output IF 24, and the like.
[0075] The HMD set 1000 (game playing terminal 300) has a function as an input device that accepts input operations by the player, a function as an output device that outputs game images and sounds, and a function of transmitting game progress information in real time to the user terminal 100 via the server 200. The HMD set 1000 functions as a control unit 310 and a storage unit 320 through cooperation of the processor 30, memory 31, storage 32, communication IF 33, input / output IF 34 of the game playing terminal 300, as well as the HMD 500, HMD sensor 510, motion sensor 520, controller 540, etc.
[0076] The distribution terminal 400 has a function of generating action instruction data and transmitting the action instruction data to the user terminal 100 via the server 200. The distribution terminal 400 functions as a control unit 410 and a storage unit 420 through cooperation of the processor 40, the memory 41, the storage 42, the communication IF 43, the input / output IF 44, the touch screen 45, and the like.
[0077] (Data stored in the memory of each device) The storage unit 120 stores a game program 131 (program), game information 132, and user information 133. The storage unit 220 stores a game program 231, game information 232, user information 233, and a user list 234. The storage unit 320 stores a game program 331, game information 332, and user information 333. The storage unit 420 stores a user list 421, a motion list 422, and a delivery program 423 (program, second program).
[0078] The game programs 131, 231, and 331 are game programs executed by the user terminal 100, the server 200, and the HMD set 1000, respectively. The game is realized by each device operating in cooperation based on the game programs 131, 231, and 331. The game programs 131 and 331 may be stored in the storage unit 220 and downloaded to the user terminal 100 and the HMD set 1000, respectively. In this embodiment, the user terminal 100 renders data received from the distribution terminal 400 based on the game program 131 and plays a video. In other words, the game program 131 is also a program for playing a video using video instruction data distributed from the distribution terminal 400. The program for playing the video may be different from the game program 131. In this case, the storage unit 120 stores a program for playing the video separately from the game program 131.
[0079] The game information 132, 232, and 332 are data that the user terminal 100, the server 200, and the HMD set 1000 refer to when executing a game program, respectively. The user information 133, 233, and 333 are data related to the account of the user of the user terminal 100. The game information 232 is the game information 132 of each user terminal 100 and the game information 332 of the HMD set 1000. The user information 233 is the user information 133 of each user terminal 100 and the user information of the player included in the user information 333. The user information 333 is the user information 133 of each user terminal 100 and the user information of the player.
[0080] The user list 234 and the user list 421 are lists of users who have participated in the game. The user list 234 and the user list 421 may include a list of users who have participated in the most recent game play by the player, as well as a list of users who have participated in each game play prior to the game play. The motion list 422 is a list of multiple motion data created in advance. The motion list 422 is, for example, a list in which information identifying each motion (for example, a motion name) is associated with each piece of motion data. The distribution program 423 is a program for realizing the distribution of action instruction data for playing a video on the user terminal 100 to the user terminal 100.
[0081] (Functional configuration of server 200) The control unit 210 executes a game program 231 stored in the storage unit 220 to comprehensively control the server 200. For example, the control unit 210 mediates the transmission and reception of various types of information among the user terminal 100, the HMD set 1000, and the distribution terminal 400.
[0082] The control unit 210 functions as a communication intermediation unit 211, a log generation unit 212, and a list generation unit 213 in accordance with the description of the game program 231. The control unit 210 can also function as other functional blocks (not shown) to intermediate the transmission and reception of various information related to game play and distribution of action instruction data, and to support the progress of the game.
[0083] The communication mediation unit 211 mediates the transmission and reception of various information between the user terminal 100, the HMD set 1000, and the distribution terminal 400. For example, the communication mediation unit 211 transmits game progress information received from the HMD set 1000 to the user terminal 100. The game progress information includes data indicating the movement of a character operated by a player, the parameters of the character, items and weapons held by the character, enemy characters, and other information. The server 200 transmits the game progress information to the user terminals 100 of all users participating in the game. In other words, the server 200 transmits common game progress information to the user terminals 100 of all users participating in the game. As a result, the game progresses in the user terminals 100 of all users participating in the game in the same manner as in the HMD set 1000.
[0084] Also, for example, the communication intermediation unit 211 transmits information for supporting the player's progress in the game, received from any one of the user terminals 100, to the other user terminals 100 and the HMD set 1000. As an example, the information may be item information indicating an item that allows the player to progress in the game advantageously and is provided to the player (character). The item information includes information indicating the user who provided the item (user name, user ID, etc.). The communication intermediation unit 211 may also intermediate the distribution of action instruction data from the distribution terminal 400 to the user terminal 100.
[0085] The log generating unit 212 generates a log of the game progress based on the game progress information received from the HMD set 1000. The list generating unit 213 generates a user list 234 after the game play ends. Although details will be described later, each user in the user list 234 is associated with a tag indicating the content of the support provided by that user to the player. The list generating unit 213 generates a tag based on the log of the game progress generated by the log generating unit 212 and associates it with the corresponding user. Note that the list generating unit 213 may associate the content of the support provided by each user to the player, which is input by the game operator or the like using a terminal device such as a personal computer, with the corresponding user as a tag. This makes the content of the support provided by each user more detailed. Note that when a user participates in a game, the user terminal 100 transmits information indicating the user to the server 200 based on the user's operation. For example, the user terminal 100 transmits the user ID input by the user to the server 200. That is, the server 200 holds information indicating each user for all users participating in the game. The list generation unit 213 may generate the user list 234 using this information.
[0086] (Functional configuration of HMD set 1000) The control unit 310 executes the game program 331 stored in the storage unit 320 to comprehensively control the HMD set 1000. For example, the control unit 310 progresses the game in accordance with the game program 331 and the player's operation. Furthermore, while the game is progressing, the control unit 310 communicates with the server 200 as necessary to transmit and receive information. The control unit 310 may transmit and receive information directly to and from the user terminal 100 without going through the server 200.
[0087] The control unit 310 functions as an operation reception unit 311, a display control unit 312, a UI control unit 313, an animation generation unit 314, a game progression unit 315, a virtual space control unit 316, and a reaction processing unit 317 in accordance with the description of the game program 331. The control unit 310 can also function as other functional blocks (not shown) for controlling characters appearing in the game in accordance with the nature of the game being executed.
[0088] The operation reception unit 311 detects and receives input operations by the player. The operation reception unit 311 receives signals input from the HMD 500, the motion sensor 520, the controller 540, etc., determines what kind of input operation has been performed, and outputs the result to each element of the control unit 310.
[0089] The UI control unit 313 controls user interface (hereinafter, UI) images to be displayed on the monitor 51, the display 530, etc. The UI images are tools that allow the player to input necessary for the progress of the game to the HMD set 1000, or tools that allow the player to obtain information output during the progress of the game from the HMD set 1000. The UI images are, but are not limited to, for example, icons, buttons, lists, menu screens, etc.
[0090] The animation generation unit 314 generates animations showing the motions of various objects based on the control modes of the various objects. For example, the animation generation unit 314 may generate animations that express the manner in which an object (e.g., an avatar object of a player) moves as if it were actually there, moves its mouth, changes its facial expression, etc.
[0091] The game progression unit 315 progresses the game based on the game program 331, an input operation by the player, and an action of the avatar object in response to the input operation. For example, the game progression unit 315 performs a predetermined game process when the avatar object performs a predetermined action. For example, the game progression unit 315 may receive information representing an operation of a user at the user terminal 100 and perform game processing based on the operation of the user. The game progression unit 315 generates game progression information according to the progress of the game and transmits it to the server 200. The game progress information is transmitted to the user terminal 100 via the server 200. As a result, the progress of the game at the HMD set 1000 is shared in the user terminal 100. In other words, the progress of the game at the HMD set 1000 and the progress of the game at the user terminal 100 are synchronized.
[0092] The virtual space control unit 316 performs various controls related to the virtual space provided to the player according to the progress of the game. As an example, the virtual space control unit 316 generates various objects and places them in the virtual space. The virtual space control unit 316 also places a virtual camera in the virtual space. The virtual space control unit 316 also operates the various objects placed in the virtual space according to the progress of the game. The virtual space control unit 316 also controls the position and inclination of the virtual camera placed in the virtual space according to the progress of the game.
[0093] The display control unit 312 outputs a game screen reflecting the results of the processing executed by each of the above-mentioned elements to the monitor 51 and the display 530. The display control unit 312 may display an image based on a field of view from a virtual camera arranged in a virtual space as a game screen on the monitor 51 and the display 530. The display control unit 312 may also include an animation generated by the animation generation unit 314 in the game screen. The display control unit 312 may also draw the above-mentioned UI image controlled by the UI control unit 313 by superimposing it on the game screen.
[0094] The reaction processor 317 receives feedback on the reaction of the user of the user terminal 100 to the gameplay of the player, and outputs this to the player. In this embodiment, for example, the user terminal 100 can create a comment (message) addressed to an avatar object based on an input operation of the user. The reaction processor 317 receives comment data of the comment, and outputs it. The reaction processor 317 may display text data corresponding to the user's comment on the monitor 51 or the display 530, or may output audio data corresponding to the user's comment from a speaker (not shown). In the former case, the reaction processor 317 may draw an image corresponding to the text data (i.e., an image including the content of the comment) by superimposing it on the game screen.
[0095] (Functional configuration of user terminal 100) The control unit 110 executes the game program 131 stored in the storage unit 120 to comprehensively control the user terminal 100. For example, the control unit 110 progresses the game in accordance with the game program 131 and user operations. Furthermore, while the game is progressing, the control unit 110 communicates with the server 200 as necessary to transmit and receive information. The control unit 110 may transmit and receive information directly to the HMD set 1000 without going through the server 200.
[0096] The control unit 110 functions as an operation reception unit 111, a display control unit 112, a UI control unit 113, an animation generation unit 114, a game progression unit 115, a virtual space control unit 116, and a video playback unit 117 in accordance with the description of the game program 131. The control unit 110 can also function as other functional blocks (not shown) for the progression of the game in accordance with the nature of the game being executed.
[0097] The operation reception unit 111 detects and receives an input operation by the user to the input unit 151. The operation reception unit 111 determines what kind of input operation has been performed from the action performed by the user on the touch screen 15 and the console via the other input / output IF 14, and outputs the result to each element of the control unit 110.
[0098] For example, the operation reception unit 111 receives an input operation on the input unit 151, detects the coordinates of the input position of the input operation, and identifies the type of the input operation. The operation reception unit 111 identifies, for example, a touch operation, a slide operation, a swipe operation, a tap operation, etc., as the type of the input operation. Furthermore, when a continuously detected input is interrupted, the operation reception unit 111 detects that the touch input from the touch screen 15 has been released.
[0099] The UI control unit 113 controls UI images to be displayed on the display unit 152 to construct a UI in response to at least one of a user's input operation and received game progress information. The UI images are tools that allow the user to input necessary for the progress of the game to the user terminal 100, or tools that allow the user to obtain information output during the progress of the game from the user terminal 100. The UI images are, but are not limited to, for example, icons, buttons, lists, menu screens, etc.
[0100] The animation generating unit 114 generates animations showing the motions of various objects based on the control modes of the various objects.
[0101] The game progression unit 115 progresses the game based on the game program 131, the received game progress information, and an input operation by the user. When a predetermined game process is performed by an input operation by the user, the game progression unit 115 transmits information related to the game process to the HMD set 1000 via the server 200. This causes the predetermined game process to be shared in the HMD set 1000. In other words, the progress of the game in the HMD set 1000 and the progress of the game in the user terminal 100 are synchronized. The predetermined game process is, for example, a process of providing an item to an avatar object, and in this example, the information related to the game process is the item information described above.
[0102] The virtual space control unit 116 performs various controls on the virtual space provided to the user according to the progress of the game. As an example, the virtual space control unit 116 generates various objects and places them in the virtual space. The virtual space control unit 116 also places a virtual camera in the virtual space. The virtual space control unit 116 also operates various objects placed in the virtual space according to the progress of the game, specifically, according to the received game progress information. The virtual space control unit 316 also controls the position and inclination of the virtual camera placed in the virtual space according to the progress of the game, specifically, according to the received game progress information.
[0103] The display control unit 112 outputs to the display unit 152 a game screen reflecting the results of the processing executed by each of the above-mentioned elements. The display control unit 112 may display, as a game screen, an image based on a field of view from a virtual camera arranged in a virtual space provided to the user on the display unit 152. The display control unit 112 may also include an animation generated by the animation generation unit 114 in the game screen. The display control unit 112 may also draw the above-mentioned UI image controlled by the UI control unit 113 by superimposing it on the game screen. In any case, the game screen displayed on the display unit 152 is the same game screen as the game screen displayed on the other user terminals 100 and the HMD set 1000.
[0104] The video playback unit 117 analyzes (renders) the action instruction data received from the distribution terminal 400, and plays back the video.
[0105] (Functional configuration of distribution terminal 400) The control unit 410 performs overall control of the distribution terminal 400 by executing a program (not shown) stored in the storage unit 420. For example, the control unit 410 generates action instruction data according to the program and an operation by a user (a player in this embodiment) of the distribution terminal 400, and distributes the action instruction data to the user terminal 100. Furthermore, the control unit 410 communicates with the server 200 as necessary to transmit and receive information. The control unit 410 may transmit and receive information directly to and from the user terminal 100 without going through the server 200.
[0106] The control unit 410 functions as a communication control unit 411, a display control unit 412, an operation reception unit 413, a voice reception unit 414, a motion identification unit 415, and an action instruction data generation unit 416 according to the description of the program. The control unit 410 can also function as other functional blocks (not shown) for generating and distributing action instruction data.
[0107] The communication control unit 411 controls transmission and reception of information to and from the server 200 or the user terminal 100 via the server 200. As an example, the communication control unit 411 receives a user list 421 from the server 200. In addition, as an example, the communication control unit 411 transmits operation instruction data to the user terminal 100.
[0108] The display control unit 412 outputs various screens reflecting the results of the processing executed by each element to the display unit 452. As an example, the display control unit 412 displays a screen including the received user list 234. Also, as an example, the display control unit 412 displays a screen including a motion list 422 for allowing the player to select motion data for moving an avatar object, which is included in the action instruction data to be distributed.
[0109] The operation reception unit 413 detects and receives the input operation of the player to the input unit 151. The operation reception unit 111 determines what kind of input operation has been performed from the action of the player on the touch screen 45 and the console via the other input / output IF 44, and outputs the result to each element of the control unit 410.
[0110] For example, the operation reception unit 413 receives an input operation on the input unit 451, detects the coordinates of the input position of the input operation, and identifies the type of the input operation. The operation reception unit 413 identifies, for example, a touch operation, a slide operation, a swipe operation, a tap operation, etc. as the type of the input operation. Furthermore, when a continuously detected input is interrupted, the operation reception unit 413 detects that the touch input from the touch screen 45 has been released.
[0111] The voice receiving unit 414 receives voice generated around the distribution terminal 400 and generates voice data of the voice. As an example, the voice receiving unit 414 receives voice uttered by a player and generates voice data of the voice.
[0112] The motion identification unit 415 identifies the motion data selected by the player from the motion list 422 in response to the input operation of the player.
[0113] The action instruction data generating unit 416 generates action instruction data. As an example, the action instruction data generating unit 416 generates action instruction data including the generated voice data and the identified motion data.
[0114] The functions of the HMD set 1000, the server 200, and the user terminal 100 shown in FIG. 6 and the functions of the distribution terminal 400 shown in FIG. 7 are merely examples. Each of the HMD set 1000, the server 200, the user terminal 100, and the distribution terminal 400 may have at least a part of the functions of the other devices. Furthermore, a device other than the HMD set 1000, the server 200, the user terminal 100, and the distribution terminal 400 may be a component of the system 1, and the other device may execute a part of the processing in the system 1. That is, the computer that executes the game program in this embodiment may be any of the HMD set 1000, the server 200, the user terminal 100, and the distribution terminal 400, and other devices, or may be realized by a combination of a plurality of these devices.
[0115] <Virtual space control processing> FIG. 8 is a flowchart showing an example of a flow of a control process of a virtual space provided to a player and a virtual space provided to a user of a user terminal 100. FIG. 9 is a diagram showing a virtual space 600A provided to a player and a field of view image visually recognized by the player according to an embodiment. FIG. 10 is a diagram showing a virtual space 600B provided to a user of a user terminal 100 and a field of view image visually recognized by the user according to an embodiment. Hereinafter, when there is no need to distinguish between the virtual spaces 600A and 600B, they will be referred to as "virtual space 600".
[0116] In step S1, the processor 30, functioning as the virtual space control unit 316, defines the virtual space 600A shown in Fig. 9. The processor 30 defines the virtual space 600A using virtual space data (not shown). The virtual space data may be stored in the game play terminal 300, may be generated by the processor 30 based on the game program 331, or may be acquired by the processor 30 from an external device such as the server 200.
[0117] As an example, the virtual space 600 has a spherical structure that covers the entire 360-degree direction from a point defined as the center. In order to avoid complicating the explanation, the upper half of the celestial sphere in the virtual space 600 is illustrated in Fig. 9 and Fig. 10.
[0118] In step S2, processor 30, functioning as virtual space control unit 316, places avatar object 610 (character) in virtual space 600A. Avatar object 610 is an avatar object associated with a player, and moves according to an input operation by the player.
[0119] In step S3, processor 30, functioning as virtual space control unit 316, places other objects in virtual space 600A. In the example of Fig. 9, processor 30 places objects 631 to 634. The other objects may include, for example, a character object (a so-called non-player character, NPC) that operates according to game program 331, an operational object such as a virtual hand, and objects that imitate animals, plants, artificial objects, natural objects, and the like that are placed according to the progress of the game.
[0120] In step S4, the processor 30, functioning as the virtual space control unit 316, places a virtual camera 620A in the virtual space 600A. The processor 30 places the virtual camera 620A at the position of the head of the avatar object 610, for example.
[0121] In step S5, the processor 30 displays the field of view image 650 on the monitor 51 and the display 530. The processor 30 defines a field of view area 640A, which is a field of view from the virtual camera 620A in the virtual space 600A, according to the initial position and inclination of the virtual camera 620A. The processor 30 then defines a field of view image 650 corresponding to the field of view area 640A. The processor 30 outputs the field of view image 650 to the monitor 51 and the display 530, thereby causing the HMD 500 and the display 530 to display the field of view image 650.
[0122] In the example of FIG. 9, as shown in FIG. 9(A), a portion of object 634 is included in field of view area 640A, so that field of view image 650 includes a portion of object 634 as shown in FIG. 9(B).
[0123] In step S6, the processor 30 transmits the initial position information to the user terminal 100 via the server 200. The initial position information is information indicating the initial positions of various objects in the virtual space 600A. In the example of FIG. 9, the initial position information includes information on the initial positions of the avatar object 610 and the objects 631 to 634. The initial position information can also be expressed as one piece of game progress information.
[0124] In step S7, the processor 30, as the virtual space control unit 316, controls the virtual camera 620A according to the movement of the HMD 500. Specifically, the processor 30 controls the direction and inclination of the virtual camera 620A according to the movement of the HMD 500, that is, the attitude of the head of the player. As described later, when the player moves his / her head (changes the attitude of the head), the processor 30 moves the head of the avatar object 610 in accordance with this movement. For example, the processor 30 controls the direction and inclination of the virtual camera 620A so that the direction of the line of sight of the avatar object 610 and the direction of the line of sight of the virtual camera 620A coincide with each other. In step S8, the processor 30 updates the field of view image 650 in response to the change in the direction and inclination of the virtual camera 620A.
[0125] In step S9, processor 30, functioning as virtual space control unit 316, moves avatar object 610 in response to the movement of the player. As an example, processor 30 moves avatar object 610 in virtual space 600A in response to the movement of the player in real space. Also, processor 30 moves the head of avatar object 610 in virtual space 600A in response to the movement of the head of the player in real space.
[0126] In step S10, processor 30, functioning as virtual space control unit 316, moves virtual camera 620A to follow avatar object 610. That is, virtual camera 620A is always at the position of the head of avatar object 610 even if avatar object 610 moves.
[0127] Processor 30 updates field of view image 650 in response to the movement of virtual camera 620A. That is, processor 30 updates field of view area 640A in response to the pose of the player's head and the position of virtual camera 620A in virtual space 600A. As a result, field of view image 650 is updated.
[0128] In step S11, processor 30 transmits action instruction data of avatar object 610 to user terminal 100 via server 200. The action instruction data here includes at least any of motion data capturing the player's actions during the virtual experience (e.g., during game play), audio data of the player's voice, and operation data indicating the contents of an input operation on controller 540. When the player is playing a game, the action instruction data is transmitted to user terminal 100 as, for example, game progress information.
[0129] The processing of steps S7 to S11 is continuously and repeatedly executed while the player is playing the game.
[0130] In step S21, the processor 10 of the user terminal 100 of the user 3, as the virtual space control unit 116, defines the virtual space 600B shown in FIG. 10. The processor 10 defines the virtual space 600B by using virtual space data (not shown). The virtual space data may be stored in the user terminal 100, may be generated by the processor 10 based on the game program 131, or may be acquired by the processor 10 from an external device such as the server 200.
[0131] In step S22, the processor 10 receives the initial placement information. In step S23, the processor 10, functioning as the virtual space control unit 116, places various objects in the virtual space 600B in accordance with the initial placement information. In the example of FIG. 10, the various objects are the avatar object 610 and objects 631 to 634.
[0132] In step S24, the processor 10, functioning as the virtual space control unit 116, places a virtual camera 620B in the virtual space 600B. As an example, the processor 10 places the virtual camera 620B at the position shown in FIG.
[0133] In step S25, the processor 10 displays the field of view image 660 on the display unit 152. The processor 10 defines a field of view area 640B, which is a field of view from the virtual camera 620B in the virtual space 600B, according to the initial position and inclination of the virtual camera 620B. Then, the processor 10 defines a field of view image 660 corresponding to the field of view area 640B. The processor 10 outputs the field of view image 660 to the display unit 152, thereby causing the display unit 152 to display the field of view image 660.
[0134] In the example of Figure 10, as shown in Figure 10(A), avatar object 610 and object 631 are included in field of view area 640B, so field of view image 660 includes avatar object 610 and object 631 as shown in Figure 10(B).
[0135] In step S26, the processor 10 receives the action instruction data. In step S27, the processor 10, as the virtual space control unit 116, moves the avatar object 610 in the virtual space 600B in accordance with the action instruction data. In other words, the processor 10 plays back a video of the avatar object 610 moving by real-time rendering.
[0136] In step S28, the processor 10, as the virtual space control unit 116, controls the virtual camera 620B in response to the user's operation received as the operation receiving unit 111. In step S29, the processor 10 updates the field of view image 660 in response to changes in the position of the virtual camera 620B in the virtual space 600B and the direction and inclination of the virtual camera 620B. In addition, in step S28, the processor 10 may automatically control the virtual camera 620B in response to the movement of the avatar object 610, for example, the movement of the avatar object 610 and the change in the direction. For example, the processor 10 may automatically move the virtual camera 620B or change the direction and inclination so that the avatar object 610 is always photographed from the front. In addition, as an example, the processor 10 may automatically move the virtual camera 620B or change the direction and inclination so that the avatar object 610 is always photographed from the rear in response to the movement of the avatar object 610.
[0137] In this way, in the virtual space 600A, the avatar object 610 moves in accordance with the movement of the player. Action instruction data indicating this action is transmitted to the user terminal 100. In the virtual space 600B, the avatar object 610 moves in accordance with the received action instruction data. As a result, the avatar object 610 performs the same action in the virtual space 600A and the virtual space 600B. In other words, the user 3 can visually recognize the action of the avatar object 610 in accordance with the action of the player using the user terminal 100.
[0138] <Game Overview> 11 is a diagram showing another example of a field of view image displayed on the user terminal 100. Specifically, it is a diagram showing an example of a game screen of a game (this game) executed by the system 1 and being played by a player.
[0139] As an example, this game is a game in which an avatar object 610 that controls a weapon such as a gun or a knife and a plurality of enemy objects 671 that are NPCs appear in a virtual space 600, and the avatar object 610 fights against the enemy objects 671. Various game parameters such as the vitality of the avatar object 610, the number of usable magazines, the number of bullets remaining in the gun, and the number of remaining enemy objects 671 are updated as the game progresses.
[0140] In this game, a plurality of stages are prepared, and the player can clear each stage by satisfying a predetermined achievement condition associated with each stage. The predetermined achievement condition may include, for example, a condition that is satisfied by defeating all enemy objects 671 that appear, defeating a boss object among the enemy objects 671 that appear, acquiring a predetermined item, reaching a predetermined position, and the like. The achievement condition is defined in the game program 131. In this game, the player clears a stage when an achievement condition is satisfied in accordance with the content of the game, in other words, the victory of the avatar object 610 over the enemy object 671 (the victory or defeat between the avatar object 610 and the enemy object 671) is determined. In contrast, for example, when the game executed by the system 1 is a racing game or the like, the ranking of the avatar object 610 is determined when the condition of reaching the goal is satisfied.
[0141] In this game, in order to share a virtual space between the HMD set 1000 and the multiple user terminals 100, game progress information is live-streamed to the multiple user terminals 100 at predetermined time intervals. As a result, a field of view image of a field of view area defined by the virtual camera 620B corresponding to the user terminal 100 is displayed on the touch screen 15 of the user terminal 100 while watching the game. In addition, parameter images representing the vitality of the avatar object 610, the number of available magazines, the number of remaining bullets in the gun, the number of remaining enemy objects 671, etc. are superimposed and displayed on the upper right and upper left sections of the field of view image. This field of view image can also be expressed as a game screen.
[0142] As described above, the game progress information includes motion data capturing the actions of the player, audio data of the voice uttered by the player, and operation data indicating the contents of input operations to the controller 540. These data are, in other words, information for specifying the position, posture, orientation, etc. of the avatar object 610, information for specifying the position, posture, orientation, etc. of the enemy object 671, and information for specifying the positions, etc. of other objects (e.g., obstacle objects 672, 673). The processor 10 analyzes (renders) the game progress information to specify the position, posture, orientation, etc. of each object.
[0143] The game information 132 includes data on various objects such as an avatar object 610, an enemy object 671, and obstacle objects 672 and 673. The processor 10 updates the position, posture, orientation, and the like of each object using the data and the analysis result of the game progress information. As a result, the game progresses, and each object in the virtual space 600B moves in the same manner as each object in the virtual space 600A. Specifically, in the virtual space 600B, each object including the avatar object 610 moves based on the game progress information, regardless of the presence or absence of an operation from the user on the user terminal 100.
[0144] On the touch screen 15 of the user terminal 100, UI images 701 and 702 are displayed, as an example, superimposed on the field of view image. The UI image 701 is a UI image that accepts an operation for displaying, on the touch screen 15, a UI image 711 that accepts, from the user 3, an item insertion operation for supporting the avatar object 610. The UI image 702 is a UI image that accepts an operation for displaying, on the touch screen 15, a UI image (described later) that accepts, from the user 3, an operation for inputting and transmitting a comment for the avatar object 610 (in other words, the player 4). The operation accepted by the UI images 701 and 702 may be, for example, an operation of tapping the UI images 701 and 702.
[0145] When the UI image 701 is tapped, a UI image 711 is displayed superimposed on the field of view image. The UI images 711 include, for example, a UI image 711A depicting a magazine icon, a UI image 711B depicting a first aid box icon, a UI image 711C depicting a traffic cone icon, and a UI image 711D depicting a barricade icon. The item insertion operation corresponds to, for example, the operation of tapping any of the UI images.
[0146] As an example, when UI image 711A is tapped, the number of remaining bullets in the gun used by avatar object 610 increases. When UI image 711B is tapped, the health of avatar object 610 is restored. When UI images 711C and 711D are tapped, obstacle objects 672 and 673 that impede the movement of enemy object 671 are placed in the virtual space. One of obstacle objects 672 and 673 may be more likely to impede the movement of enemy object 671 than the other.
[0147] The processor 10 transmits item input information indicating that an item input operation has been performed to the server 200. The item input information includes at least information for identifying the type of item specified by the item input operation. The item input information may include other information related to the item, such as information indicating the position where the item is placed. The item input information is transmitted to the other user terminals 100 and the HMD set 1000 via the server 200.
[0148] 12 is a diagram showing another example of the field of view image displayed on the user terminal 100. Specifically, it is a diagram showing an example of the game screen of the present game, and is a diagram for explaining communication between a player and the user terminal 100 during game play.
[0149] In the example of Fig. 12(A), the user terminal 100 causes the avatar object 610 to make an utterance 691. Specifically, the user terminal 100 causes the avatar object 610 to make an utterance 691 in accordance with the voice data included in the game progress information. The content of the utterance 691 is "I'm out of bullets!" uttered by the player 4. That is, the content of the utterance 691 informs each user that the magazine is empty and the number of bullets loaded in the gun is reduced to 1, and therefore, the user is likely to lose the means to attack the enemy object 671.
[0150] In Fig. 12(A), speech bubbles are used to visually indicate the speech of avatar object 610, but in reality, sound is output from the speaker of user terminal 100. In addition to the sound output, the speech bubbles shown in Fig. 12(A) (i.e., speech bubbles containing the text of the sound content) may be displayed in the field of view image. This also applies to utterance 692, which will be described later.
[0151] When a tap operation on the UI image 702 is received, the user terminal 100 displays UI images 705 and 706 (message UIs) superimposed on the field of view image, as shown in Fig. 12(B). The UI image 705 is a UI image that displays a comment on the avatar object 610 (in other words, the player). The UI image 706 is a UI image that receives a comment sending operation from the user 3 to send the input comment.
[0152] For example, when the user terminal 100 receives a tap operation on the UI image 705, the user terminal 100 displays a UI image imitating a keyboard (not shown, hereinafter simply referred to as "keyboard") on the touch screen 15. The user terminal 100 displays text corresponding to the user's input operation on the keyboard on the UI image 705. In the example of FIG. 12(B), the text "I'll send you a magazine" is displayed on the UI image 705.
[0153] After inputting text, for example, when the user terminal 100 receives a tap operation on the UI image 706, the user terminal 100 transmits comment information including information indicating the input content (content of the text) and information indicating the user to the server 200. The comment information is transmitted to other user terminals 100 and the HMD set 1000 via the server 200.
[0154] The UI image 703A is a UI image showing the user name of the user who sent the comment, and the UI image 704A is a UI image showing the content of the comment sent by the user. In the example of FIG. 12(B), a user with the user name "BBBBB" uses his / her user terminal 100 to send comment information with the content "Danger!", and thus the UI image 703A and the UI image 704A are displayed. The UI image 703A and the UI image 704A are displayed on the touch screen 15 of all the user terminals 100 participating in the game and on the monitor 51 of the HMD 500. The UI images 703A and 704A may be one UI image. That is, the user name and the content of the comment may be included in one UI image.
[0155] In the example of Fig. 12(C), a user with the user name "AAAAA", who is a user of the user terminal 100 shown in Fig. 12, has input and sent a comment as described above, and as a result, UI images 703B and 704B are displayed on the touch screen 15. UI image 703B includes the user name "AAAAA", and UI image 704B includes the comment "I'll send you the magazine!", which was input in the example of Fig. 12(B).
[0156] 12C is a view image 611 after the user "AAAAA" further inputs a tap operation on the UI image 701, causes the UI image 711 to be displayed on the touch screen 15, and inputs a tap operation on the UI image 711A. That is, as a result of the user terminal 100 of the user "AAAAAA" transmitting item insertion information indicating a magazine to the other user terminals 100 and the HMD set 1000, the user terminal 100 and the HMD set 1000 place a performance object 674 (described later) in the virtual space 600. As an example, the user terminal 100 and the HMD set 1000 execute a performance related to the performance object 674 after the elapsed time indicated in the item insertion information has elapsed, and execute a process of activating the effect of the item object.
[0157] In the example of FIG. 12(D), the number of magazines is increased from 0 to 1 by executing a process to activate the effect of the item object. As a result, the player utters "Thank you!" to the user "AAAAA", and the voice data of this utterance is transmitted to each user terminal 100. As a result, each user terminal 100 outputs the voice "Thank you!" as the utterance 692 of the avatar object 610.
[0158] As described above, in this game, communication between the users and the avatar object 610 is realized by outputting the speech of the avatar object 610 based on the speech of the player and inputting comments by each user.
[0159] (Game Progression Processing in the Game Playing Terminal 300) FIG. 13 is a flow chart showing an example of the flow of a game progression process executed on the game playing terminal 300.
[0160] In step S31, the processor 30, as the game progression unit 315, progresses the game based on the game program 331 and the movement of the player. In step S32, the processor 30 generates game progress information and distributes it to the user terminals 100. Specifically, the processor 30 transmits the generated game progress information to each user terminal 100 via the server 200.
[0161] In step S33, when processor 30 receives the item insertion information (YES in S33), in step S34, processor 30 places an item object in virtual space 600A based on the item insertion information. As an example, processor 30 places effect object 674 in virtual space 600A before placing the item object (see FIG. 11(C)). The effect object 674 may be, for example, an object resembling a gift box. As an example, processor 30 may execute an effect related to effect object 674 after the elapse of the time indicated in the item insertion information. The effect may be, for example, an animation in which the lid of the gift box opens. After the execution of the animation, processor 30 executes a process of activating the effect of the item object. For example, in the example of FIG. 11(D), an obstacle object 673 is placed.
[0162] After the animation is executed, the processor 30 may place an item object corresponding to the tapped UI image in the virtual space 600A. For example, when a tap operation is performed on the UI image 711A, the processor 30 places a magazine object indicating a magazine in the virtual space 600A after the animation is executed. Also, when a tap operation is performed on the UI image 711B, the processor 30 places a first aid box object indicating a first aid box in the virtual space 600A after the animation is executed. For example, when the avatar object 610 moves to the position of the magazine object or the first aid box object, the processor 30 may execute a process of activating an effect of the magazine object or the first aid box object.
[0163] Processor 30 continues and repeats the processes of steps S31 to S34 until the game ends. When the game ends, for example, when the player inputs a predetermined input operation for ending the game (YES in step S35), the process shown in FIG. 13 ends.
[0164] (Game Progression Processing in User Terminal 100) FIG. 14 is a flowchart showing an example of the flow of a game progression process executed on the user terminal 100.
[0165] In step S41, the processor 10 receives game progress information. In step S42, the processor 10, functioning as the game progress unit 115, progresses the game based on the game progress information.
[0166] In step S43, when the processor 10 accepts an item insertion operation by the user 3 (YES in step S43), in step S44, the processor 10 consumes the virtual currency and places the effect object 674 in the virtual space 600B. Here, the virtual currency may be purchased (charged for the game) by the user 3 performing a predetermined operation on the processor 10 before or during participation in the game, or may be granted to the user 3 when a predetermined condition is satisfied. The predetermined condition may be a condition that requires participation in the game, such as clearing a quest in the game, or a condition that does not require participation in the game, such as answering a questionnaire. The amount of virtual currency (amount of virtual currency owned) is stored in the user terminal 100 as game information 132, for example.
[0167] In step S45, the processor 10 transmits item input information to the server 200. The item input information is transmitted to the game playing terminal 300 via the server 200.
[0168] When a predetermined time has elapsed after placing the effect object 674, the processor 10 places an item object in the virtual space 600A. In the example of Fig. 11, an obstacle object 673 is placed. That is, when the user 3 inputs a tap operation on the UI image 711C, a predetermined amount of virtual currency is consumed and the obstacle object 673 is placed.
[0169] Processor 10 continues and repeats the processes of steps S41 to S45 until the game ends. When the game ends, for example, when the player performs a predetermined input operation for ending the game, or when user 3 performs a predetermined input operation for leaving the game midway (YES in step S46), the process shown in FIG. 14 ends.
[0170] (Game Progression Processing in Server 200) FIG. 15 is a flowchart showing an example of the flow of a game progression process executed by the server 200.
[0171] In step S51, the processor 20 receives game progress information from the game play terminal 300. In step S52, the processor 20, functioning as the log generating unit 212, updates a log of the game progress (hereinafter, a play log). Note that the play log is generated by the processor 20, for example, when initial placement information is received from the game play terminal 300.
[0172] In step S53, the processor 20 transmits the received game progress information to each user terminal 100.
[0173] In step S54, if item input information has been received from any of the user terminals 100 (YES in step S54), in step S55, the processor 20 updates the play log as the log generating unit 212. In step S56, the processor 20 transmits the received item input information to the game play terminal 300.
[0174] The processor 20 continues and repeats the processes of steps S51 to S56 until the game ends. When the game ends, for example, when information indicating that the game has ended is received from the game play terminal 300 (YES in step S57), in step S58, the processor 20, as the list generation unit 213, generates a list of users who participated in the game (user list 234) from the play log. The processor 20 stores the generated user list 234 in the server 200.
[0175] FIG. 16 is a diagram showing a specific example of user list 234. The "User" column stores information (e.g., user name) indicating each user who participated in the game. The "Tag" column stores information (tag) generated based on the support provided by each user to the player. In the example of FIG. 16, among the tags stored in the "Tag" column, those without quotation marks are information automatically generated by processor 20, and those with quotation marks are information manually input by the administrator of the game.
[0176] 16, the user "AAAAA" is associated with the information of magazine, 10th floor, boss, and "defeat the boss by gifting the magazine." This indicates that, for example, in a boss battle on the stage 10th floor, the user "AAAAAA" inserted a magazine, and the avatar object 610 defeated the boss with the bullets from the inserted magazine.
[0177] Additionally, the user “BBBBB” is associated with the information: first aid kit, 3F, weak enemy, and “recovered just before game over.” This indicates that, for example, in a battle with a weak enemy on stage 3F, the user “BBBBB” throws in a first aid kit, and as a result, the avatar object 610’s health is recovered just before it reaches 0 (game over).
[0178] Additionally, the user "CCCCC" is associated with information such as barricade, 5F, and weak enemies, and "two zombies stopped by barricade." This indicates that, for example, in a battle with weak enemies on the 5F stage, the user "CCCCC" put in a barricade (obstacle object 672 in FIG. 11), and as a result, succeeded in stopping two weak enemies.
[0179] 16, one support provided is associated with the user name of each user 3, but the user name of a user 3 who provided support multiple times is associated with tags for each of the multiple support times. It is preferable that each tag is distinguished in the user list 234. This allows a player who refers to the user list 421 using the distribution terminal 400 after the game ends to accurately understand the content of each support.
[0180] <Overview of the movement game> The system 1 according to this embodiment can provide a movement game (for example, also called a MAP game) in addition to the above-mentioned games. The user terminal 100 moves to an event selection screen by tapping a movement game start icon on the menu screen, and when any event is selected, starts a movement game corresponding to the event. When the movement game is started, the user terminal 100 acquires map image information of the area to be the target of the movement game (for example, an area with a radius of 100 km centered on the initial position of the character object 301) from the server 200 or the like. The map image information includes information for displaying the map image as well as altitude information for identifying the altitude (altitude difference) at each point on the map. Based on the acquired map image information, the user terminal 100 draws a 3D map image reflecting a terrain with an elevation difference in a predetermined area such as the memory 11, and displays a part of the area of the 3D map image on the touch screen 15.
[0181] Furthermore, the user terminal 100 displays the character object 301 superimposed on the 3D map image at a predetermined position (for example, approximately the center position) in the display area of the touch screen 15. Furthermore, a plurality of types of objects including enemy characters and objects resembling trees, rocks, buildings, etc. are arranged at various points on the map image. The user terminal 100 displays the character object 301 so that it moves along the terrain of the 3D map image in response to an input operation from the user to the touch screen 15. More specifically, the user terminal 100 displays the character object 301 displayed at a predetermined position so that it moves along the terrain of the 3D map image by displacing (for example, moving and updating in a direction specified by the input operation) an area to be displayed on the touch screen 15 out of the 3D map image previously drawn in the memory 11 or the like in a manner in response to the input operation from the user. This allows the user to have the sensation of moving through a more realistic space.
[0182] In addition, in a movement game, a mission (e.g., a destination to be reached, an item to be acquired, etc.) is set according to an event selected at the start, and by accomplishing the mission, a benefit according to the event, the movement route, etc. is given to the user. Meanwhile, in the movement game of this embodiment, the movement speed of the character object 301 is calculated and specified according to the difference in elevation (e.g., uphill, downhill, slope, inclination angle, etc.) between the position where the character object 301 is located and the position in the movement direction. That is, the movement speed of the character object 301 changes according to the difference in elevation accompanying the movement of the character object 301.
[0183] Furthermore, in the moving game of this embodiment, even if the point is displayed on the touch screen 15, moving to a point whose altitude is equal to or higher than a predetermined value (for example, 1000 m) is restricted. Therefore, the ease of accomplishing the mission and the time required to accomplish the mission vary depending on which route is taken. As a result, when the user considers a moving route, it is possible to provide an interesting feature in that the user can appropriately select the route by taking into consideration not only the straight-line distance but also the difference in elevation of the terrain of the 3D map image, thereby realizing a variety of game characteristics. The moving game will be specifically described below with reference to Figs. 17 to 19.
[0184] FIG. 17 is a diagram showing an example of a display screen (game screen) during a movement game displayed in the display area of the touch screen 15. FIG. 17(a) is a diagram showing an example of a game screen in a stationary state in which a character object 301 is stopped without moving. As shown in FIG. 17(a), a 3D map image that allows the player to grasp the undulations of the terrain is displayed as a game screen during a movement game. In FIG. 17(a), the undulations and elevations of the terrain are expressed by ridgelines and the like. Also, as shown in FIG. 17(a), a character object 301, an operating body 302, a direction image 303, a boundary image 304, a menu icon 305, a map icon 306, a back icon 307, speed information 308, altitude information 309, current area information 310, event information 311, a stamina gauge 312, an obstacle object 313, and the like are displayed superimposed on the 3D map image. During the movement game, the 3D map image and the character object 301 are displayed on the touch screen 15 as images viewed from a predetermined oblique direction.
[0185] The character object 301 is a character that can move freely (except for specific points such as points at altitudes equal to or higher than a predetermined value) on the 3D map image in response to an input operation from the user. In FIG. 17, a human-shaped character object is illustrated as an example of the character object 301, but the present invention is not limited to this. There are multiple types of character objects to be moved, and the user can select a character object to be used in the movement game from among the character objects owned by the user. The number of available character objects can be increased by being given as a bonus in the game or by purchasing them for a fee.
[0186] The operating body 302 is a circular operating unit that accepts an input operation from the user to specify a direction in which the character object 301 is to be moved. The direction image 303 is a circular image that is slightly larger than the operating body 302, indicates a direction in the map image (the direction of N is north), and rotates according to the direction in which the character object 301 is to be moved. In FIG. 17(a), N is shown in the diagonally upper left direction (the direction of the hour hand at 11 o'clock in a clock analogy), indicating that the direction is north. When no input operation is performed, the operating body 302 is displayed at the center position (reference position) of the range surrounded by the direction image 303. When a drag operation is performed on the operating body 302 by the user, the user terminal 100 moves the operating body 302 in the direction specified by the drag operation. More specifically, the user terminal 100 does not move the operating object 302 by a drag operation started by a touch operation on a position other than the position of the operating object 302, but moves the operating object 302 in response to a drag operation started by a touch operation on the position of the operating object 302. The operating object 302 has a movement range within the range of the direction image 303. The operating object 302 is a circular object that has a predetermined radius from the center position of the operating object 302 and whose center position is movable within the range of the direction image 303. As a result, when the center position moves to the vicinity of the outer edge of the direction image 303 by a drag operation, the operating object 302 is displayed slightly protruding outside the direction image 303.
[0187] The boundary image 304 is a circular image showing the boundary of a predetermined range (for example, a spherical range equivalent to a radius of 10 m, or a circular range equivalent to a radius of 10 m when the character object 301 is viewed from directly above) centered on the position of the character object 301 (for example, the grounding point where the character object 301 is grounded on the 3D terrain image). The shape of the boundary image 304 changes according to the elevation difference of the terrain that intersects with the boundary by moving the character object 301. For example, the distance between the character object 301 on the display and the flat ground part differs in the high or low part of the terrain, so the boundary image 304 can have various shapes according to the elevation difference of the terrain. The boundary image 304 shows the range in which the character object 310 can perform a predetermined action, and for example, it is possible to fight against enemy characters within the predetermined range, obtain items placed within the predetermined range, and the like.
[0188] The menu icon 305 is an icon for moving to a menu screen. On the menu screen, a moving game start icon and icons for starting the above-mentioned live broadcast viewing and live game are displayed. The map icon 306 is an icon for displaying a 3D map image, i.e., an overall map, which is the subject of the event, on the touch screen 15. The back icon 307 is an icon for moving (going back) from the current screen to the previous screen. The speed information 308 is information indicating the current moving speed of the character object 301. The altitude information 309 is information indicating the altitude of the point where the character object 301 is currently located. The current location position information 310 is information indicating the area (for example, prefecture, city, town, village, etc.) to which the current location of the character object 301 belongs. The event information 311 is information indicating the mission achievement content of the event selected by the input operation by the user.
[0189] The stamina gauge 312 is a gauge that displays the stamina of the character object 301. The stamina gauge 312 is displayed in blocks divided into, for example, 10. When the stamina gauge 312 is equal to or greater than a specific value (for example, 1 block), the character object 301 can move in response to an input operation from the user. The stamina gauge 312 consumes blocks in response to the distance the character object 301 has moved and the elevation difference that accompanies the movement. For example, blocks are consumed faster when moving uphill than when moving on flat ground, and conversely, blocks are consumed slower when moving downhill. The obstacle object 313 is an object that is arranged on the map image. In FIG. 17(a), an object that resembles a tree is shown as the obstacle object 313. The obstacle object 313 also includes objects that resemble, for example, rocks, buildings, and the like. The obstacle objects 313 include objects that impede the movement of the character object 301, objects that release items (to be given to the user) when the character object 301 collides with them, and the like.
[0190] FIG. 17(b) is a diagram showing an example when the orientation of the character object 301 in FIG. 17(a) is changed. In this movement game, the direction in which the character object 301 faces can be changed by swiping the screen of the touch screen 15 other than the operating body 302 (for example, the periphery of the character object 301). Specifically, the orientation of the character object 301 is changed in the operating direction of a drag operation started by a touch operation on a position other than the position of the operating body 302. Note that, as an operation other than that of the operating body 302 on the touch screen 15, a pinch-in operation on the touch screen 15 can be used to reduce the display centered on a predetermined position (character object), and a pinch-out operation can be used to enlarge the display centered on a predetermined position (character object). The objects to be enlarged and reduced are the map image, the character object 310, and the boundary image 304, and the other operating bodies 302, icons, and information displays are not the objects to be enlarged and reduced.
[0191] FIG. 17(c) is a diagram showing an example when the movement of the character object 301 is started. As shown in FIG. 17(c), the character object 301 moves by receiving an input operation on the operating body 302 from the user. The user can move the character object 301 by touching the area inside the circle of the operating body 302 and dragging the operating body 302. When a drag operation is started by a touch operation on the operating body 302, the user terminal 100 specifies a vector having the center position of the direction image 303 as a start point and the current touch position as an end point. If the current touch position is within the range of the direction image 303, the user terminal 100 aligns the center position of the operating body 302 to the current touch position, and if the current touch position is outside the range of the direction image 303, the user terminal 100 aligns the center position of the operating body 302 to the intersection point of the vector and the outer frame of the direction image 303. When the touch position for the drag operation is moved outside the outer frame of the direction image 303 in the circumferential direction of the outer frame of the direction image 303, the intersection point between the touch position and the center position of the operating body 302, and therefore the operating body 302 also moves in the circumferential direction. The user terminal 100 moves the character object 301 in a direction according to the center position of the operating body 302 and the current position of the operating body 302. In addition, the boundary image 304 changes its shape according to the elevation difference of the terrain that intersects with the boundary. As shown in FIG. 17(c) to FIG. 17(f), the terrain that intersects with the boundary changes as the character object 301 moves, and therefore the shape of the boundary image 304 also changes to a shape according to the terrain.
[0192] The moving speed of the character object 301 varies depending on the difference in elevation of the terrain. The moving speed on flat ground is determined to differ depending on the game content, the type of game, the type of character object 301, the game objects associated with the game object (equipment, weapons, accessories, consumable items, etc.), and the moving speed according to the terrain is calculated each time based on the moving speed on flat ground as described below. It should be noted that the moving speed on flat ground of the character object 301 shown in FIG. 17 is determined to be, for example, 263 km per hour.
[0193] FIG. 17(d) is a diagram showing an example of the character object 301 moving on an uphill terrain. When the character object 301 moves uphill, the moving speed is slower than when moving on flat ground. In FIG. 17(d), the moving speed of the character object 301 moving uphill is displayed as 65 km per hour. The moving speed on the uphill is calculated according to a predetermined "moving speed on flat ground" and an "angle of the uphill slope" so that the larger (steeper) the angle of the slope, the slower the moving speed becomes. When moving uphill, the moving speed of the character object 301 is gradually decelerated over time from the current moving speed to a moving speed calculated according to the predetermined "moving speed on flat ground" and "angle of the uphill slope". This allows the character object 301 to move uphill by inertia, for example, a moving display of moving uphill with momentum can be displayed.
[0194] FIG. 17(e) is a diagram showing an example of the character object 301 moving on a downhill terrain. When the character object 301 moves on a downhill slope, the moving speed is faster than when the character object 301 moves on a flat ground. In FIG. 17(e), the moving speed of the character object 301 moving on a downhill slope is displayed as 385 km / h. The moving speed on a downhill slope is calculated according to a predetermined "moving speed on flat ground" and "angle of the slope of the downhill slope" so that the larger (steeper) the angle of the slope, the faster the moving speed becomes. When moving on a downhill slope, the moving speed of the character object 301 is gradually accelerated over time from the current moving speed to a moving speed calculated according to the predetermined "moving speed on flat ground" and "angle of the slope of the downhill slope". This makes it possible to display the moving speed gradually increasing as the character object goes downhill.
[0195] FIG. 17(f) is a diagram showing an example when the character object 301 moves on flat ground. In FIG. 17(f), the moving speed of the character object 301 moving on flat ground is displayed as 263 km per hour. In this moving game, the character object 301 moves on a terrain with a difference in elevation, so the altitude at which the character object 301 is located changes as the character object moves. In FIG. 17, (c) shows the character object starting to move, (d) shows the character object going up an uphill slope, (e) shows the character object going down a downhill slope, and (f) shows the character object returning to flat ground. Therefore, the altitude of the character object 301 is displayed as 78 m in FIG. 17(c), 174 m in FIG. 17(d), 119 m in FIG. 17(e), and 54 m in FIG. 17(f).
[0196] The posture of the character object 301 during movement is, in principle, an upright posture along the vertical direction on the 3D map image. Therefore, compared to when moving on flat ground, when moving uphill, the character object 301 is inclined forward relative to the slope of the uphill, and conversely, when moving downhill, the character object 301 is inclined backward relative to the slope of the downhill. In addition, the posture of the character object 301 changes from time to time depending on the difference in elevation in the direction of travel, so that the character object 301 appears to be off-balance. Furthermore, the posture of the character object 301 also changes depending on the difference in elevation in the left-right direction that intersects with the direction of travel. For example, when crossing a slope going up from left to right, the character object 301 sometimes staggers to the left, and conversely, when crossing a slope going up from right to left, the character object 301 sometimes staggers to the right. As a result, the posture of the character object 301 during movement can improve the sense of realism.
[0197] The stamina gauge 312 varies in the amount of consumption depending on the travel distance and the terrain. For example, the stamina gauge 312 decreases at a pace such that one block is consumed when the travel distance reaches a predetermined distance (for example, 10 km). Also, when moving uphill, the amount of consumption is greater than when moving on flat ground. When moving uphill, for example, the stamina gauge decreases at a pace such that one block is consumed when the travel distance reaches a distance shorter than the predetermined distance (for example, 5 km). Also, when moving uphill, the greater the inclination of the uphill slope, the greater the amount of consumption (the faster the consumption pace). For example, when the inclination is 5 degrees to 10 degrees, the stamina gauge decreases at a pace such that one block is consumed when the travel distance reaches 5 km, whereas when the inclination is 11 degrees to 15 degrees, the stamina gauge decreases at a pace such that one block is consumed when the travel distance reaches 3 km.
[0198] Conversely, when moving downhill, the amount of energy consumed is less than when moving on flat ground. When moving downhill, for example, the energy is consumed at a pace such that one block is consumed when the distance traveled reaches a distance longer than a predetermined distance (for example, 15 km). Also, when moving downhill, the greater the gradient of the downhill slope, the less energy is consumed (the consumption pace is slower). For example, when the gradient is between 5 degrees and 10 degrees, the energy is consumed at a pace such that one block is consumed when the distance traveled reaches 15 km, whereas when the gradient is between 11 degrees and 15 degrees, the energy is consumed at a pace such that one block is consumed when the distance traveled reaches 20 km.
[0199] As described above, the display area displays an image of the 3D map image and the character object 301 viewed from a predetermined oblique direction. For this reason, for example, if the altitude of the terrain displayed in the lower area (foreground) of the display area of the touch screen 15 is higher than the point where the character object 301 is located, the character object 301 may be hidden by the terrain depending on the height of the terrain displayed in the foreground, causing the character object 301 to be hidden. In this way, the viewpoint is fixed to make it easier to understand, and a situation can be created in which the character object 301 is hidden depending on the terrain, thereby increasing the sense of realism.
[0200] FIG. 18 is a diagram showing an example of a display when the altitude of the moving character object 301 reaches a predetermined value. FIG. 18 shows an example in which the map image, the character object 301, and the boundary image 304 are enlarged by a pinch-out operation compared to FIG. 17. In the movement game of this embodiment, the altitude at which the character object 301 can move is limited (regulated) to a predetermined value. The predetermined value is, for example, an altitude of 1000 m, and the character object 301 cannot move beyond an altitude of 1000 m. FIG. 18(a) is a diagram showing an example of a display when the altitude of the moving character object 301 is about to reach a predetermined value. FIG. 18(a) shows a state in which the character object 301 moves up a slope at an altitude of about 990 m at a speed of 30 km per hour.
[0201] FIG. 18(b) is a diagram showing a display example when the altitude reaches 1000 m. When the character object 301 reaches an altitude of 1000 m, a slide effect is started in which the character object 301 swings its arms around to lose balance, and then slides down. FIG. 18(b) shows a scene of the action of swinging its arms around to lose balance, and FIG. 18(c) shows a scene of the action of sliding down. The slide effect may be performed immediately after the altitude reaches 1000 m, or may be performed when the altitude exceeds 1000 m (for example, 1001 m), or may be performed a predetermined time after the altitude reaches 1000 m (for example, 1 second). When the slide effect is started, the operating body 302 returns to the reference position regardless of the presence or absence and state of an input operation to the operating body 302 from the user (see FIG. 18(b)). Even if a drag operation is performed on the operating body 302 during the slide effect, the operating body 302 does not move and is fixedly displayed at the reference position. This makes it possible to prevent the user from misunderstanding that a problem has occurred in which the character object 301 cannot be operated as the user wishes, even though the operating body 302 has moved from the reference position.
[0202] FIG. 18(d) is a diagram showing a display example when the character object 301 stands up again after sliding down to an altitude of 968 m due to a sliding effect. This enables the input operation to the operating body 302 to be effectively accepted, and the movement according to the operation can be resumed. As shown in FIG. 18(b) to (d), the difference between the altitude of a predetermined value and the current altitude and the change in the display position of the obstacle object 313 resembling a tree indicate that the character object 301 has slid down a certain distance. Note that the action content in the sliding effect may be constant regardless of the type of the character object being moved, or may be different depending on the type of the character object being moved. Also, the sliding distance due to the sliding effect may be constant regardless of the type of the character object, or may be different depending on the type of the character object, and may be different depending on the height difference and the angle (magnitude) of the slope of the terrain. For example, the sliding distance on a steep slope may be larger (longer) than the sliding distance on a gentle slope.
[0203] Also, the altitude at which the movement of the character object is restricted may be different depending on whether or not a specific condition is satisfied. For example, when the specific condition is not satisfied, 1000 m may be set as the predetermined value, and when the specific condition is satisfied, 2000 m may be set as the predetermined value. The specific condition may be satisfied, for example, by associating (equipping) a predetermined object with the character object 301. For example, the specific condition is satisfied when a specific type of game object (item, weapon, etc.: for example, hiking boots, etc.) is associated with the character object 301 (use of an item, or equipment of weapon, etc.). Also, the specific condition is satisfied when the character object 301 being moved is a specific type of character object. For example, if the character object has an attribute that is good at mountain climbing, it may be possible to move beyond 1000 m even if the character object is not equipped with a specific item. The value determined as the predetermined value depending on whether or not a specific condition is satisfied is not limited to 1000 m or 2000 m. Furthermore, the value determined as the predetermined value when a specific condition is met may differ depending on which of the specific type of game objects the object is, or may differ depending on which of the specific type of character objects the object is. Note that the specific type of game object or the specific type of character object may be given as a game reward in the game shown in Fig. 12 or the movement game, or may be acquired by purchasing it for a fee.
[0204] In this moving game, the moving speed and posture of the character object 301 are changed according to the terrain and elevation difference along which the character object 301 moves, as described above. This allows the character object to change its moving mode to match the terrain corresponding to the position of the character object 301, which gives the user a realistic feeling and improves the interest of the game. In addition, the moving speed and the amount of stamina consumed change according to the terrain and elevation difference along which the character object 301 moves, and further, an area (a predetermined value of altitude) in which the character object 301 cannot move is provided, which improves the fun of considering the character's moving route, such as what route should be taken in addition to the shortest route (straight route) to accomplish a mission. As a result, even if the character object moves on the same map image, a variety of game characteristics can be realized for each user.
[0205] (Movement game processing) 19 is a flowchart showing an example of a movement game process executed by the user terminal 100. The movement game process is executed by the user terminal 100 during the movement game, but is not limited to this, and a part of the process may be executed by the server 200 and the processing result may be transmitted to the user terminal 100.
[0206] In step S01, 3D map image information reflecting the terrain is acquired. A 3D map image is drawn based on the acquired map image information, and a map image of an area corresponding to the start position of the selected event is displayed on the touch screen 15, and a character object 301 is superimposed on the map image and displayed on the touch screen 15.
[0207] In step S02, it is determined whether or not an input operation from the user to the operating body 302 has been accepted. If it is not determined that an input operation has been accepted, the process proceeds to step S04, where a stamina gauge recovery process is executed. This allows the consumed stamina to be recovered (increased) over time. Also, when an operation is performed on another icon, a corresponding process is executed.
[0208] When it is determined that an input operation has been received, in step S03, it is determined whether or not the stamina gauge 312 is equal to or greater than a specific value (for example, one block). When it is determined that the stamina gauge 312 is less than the specific value (i.e., zero), the process proceeds to step S06, where a rest action is executed. The rest action is, for example, an action that is performed as if the player is taking a nap on the spot. Note that the rest action may always be executed when the stamina gauge 312 is less than the specific value.
[0209] When it is determined that the stamina gauge 312 is equal to or greater than a specific value, in step S05, the moving direction of the operating object 302 is identified based on an input operation from the user. Next, the process proceeds to step S07, where the elevation difference between the current location and the moving destination location in the moving direction identified in step S05 is identified based on the altitude information included in the map image information. The process proceeds to step S08, where it is determined whether or not there is an elevation difference based on the elevation difference identified in step S07. When it is determined that there is an elevation difference, the process proceeds to step S09, where the moving speed is identified based on the elevation difference, etc. On the other hand, when it is not determined that there is an elevation difference, the moving speed does not vary based on the elevation difference, so the process proceeds to step S11.
[0210] In step S09, the moving speed is calculated and specified according to the current moving speed and the height difference specified in step S07, and set as the current moving speed. For example, as shown in FIG. 17(d), when moving uphill, the moving speed is gradually decelerated over time from the current moving speed to a moving speed calculated according to the predetermined "moving speed on flat ground" and "angle of the slope of the uphill". Also, as shown in FIG. 17(e), when moving downhill, the moving speed is gradually accelerated over time from the current moving speed to a moving speed calculated according to the predetermined "moving speed on flat ground" and "angle of the slope of the downhill". As a result, the moving speed converges to a moving speed calculated according to the slope (angle of the slope), but the time required for the moving speed to converge differs depending on the angle of the slope and the current moving speed. Also, when going downhill and then going uphill, the speed gained on the downhill can be used to move the beginning of the uphill by inertia, and a performance that matches the real space, such as a gradually decelerating moving speed, can be performed. In addition, the movement speed is not limited to this as long as it is calculated and determined taking into account the difference in elevation. For example, the movement speed may be calculated and determined based only on the difference in elevation, or may be calculated and determined by taking into account other factors in addition to the difference in elevation.
[0211] Next, the process proceeds to step S10, where an action during movement of the character object 301 during movement is specified according to the current moving speed set in step S09 and the height difference specified in step S07. The posture of the character object 301 is exemplified as an action during movement. As described above, the posture of the character object 301 is basically a posture in which the character object stands upright in the vertical direction, but in step S10, it is specified whether or not the posture is changed to a posture in which the character object loses balance or staggers left and right according to the height difference in the moving direction and the height difference in the left and right direction intersecting the moving direction. Note that the frequency with which the posture of the character object changes may differ according to the current moving speed and the degree of the height difference, and may be increased, for example, as the current moving speed is faster and as the height difference is larger (i.e., as the inclination is larger).
[0212] In step S11, the area displayed on the touch screen 15 is displaced in a manner according to an input operation from the user (for example, the area is updated by moving in a direction specified by the input operation) at the current moving speed set in step S09, so that the character object 301 is displayed as moving along the terrain of the 3D map image. Also, in step S11, the action during movement specified in step S10 is executed. In step S12, it is determined whether or not the altitude reaches a predetermined value as a result of the movement of the character object 301. If it is determined that the altitude does not reach the predetermined value, the process proceeds to step S13. If it is determined that the altitude has reached the predetermined value, the process proceeds to step S14, and a slide-down performance is executed. Note that the predetermined value differs depending on whether or not a specific condition is satisfied. If the specific condition is satisfied, the predetermined value is an altitude of 2000 m, and if the specific condition is not satisfied, the predetermined value is an altitude of 1000 m.
[0213] In step S13, it is determined whether the mission has been accomplished. When the mission is accomplished by reaching the destination, the mission has been accomplished by reaching the destination, and when the mission is accomplished by acquiring a specific item, the mission has been accomplished by acquiring the specific item. When it is determined that the mission has not been accomplished, the process returns to step S02. When it is determined that the mission has been accomplished, in step S15, a benefit advantageous to the user is given according to the distance traveled by the character object 301 and the elevation difference involved in the movement.
[0214] The difference in elevation accompanying the movement may be, for example, the difference in elevation between the start point and the destination point when the mission is accomplished by reaching the destination point, or the difference in elevation between the minimum altitude and the maximum altitude on the movement path, or the accumulated difference in elevation during the movement. Also, when the mission is accomplished by obtaining a specific item, it may be the difference in elevation between the minimum altitude and the maximum altitude on the movement path, or the accumulated difference in elevation during the movement. Also, the movement distance of the character object 301 may be, for example, the straight-line distance between the two points of the start point and the destination point when the mission is accomplished by reaching the destination point, or the distance on the path along which the character object 301 has moved (accumulated distance, movement path), or when the mission is accomplished by obtaining a specific item, it may be the distance on the path along which the character object 301 has moved (accumulated distance).
[0215] The privileges given to the user include virtual currency that can be used in the game, points required to start an event, points for growing a character object, game objects (including specific types of game objects such as weapons, tools, and accessories), and new character objects (including specific types of character objects). In step S15, the longer the moving distance and the greater the difference in elevation, the more advantageous the privilege is given to the user. In step S15, the degree of advantage of the privilege is determined according to the moving distance and the difference in elevation upon mission completion, and the privilege of the advantageous degree is granted. However, the present invention is not limited to this, and it may be determined whether or not to grant a privilege according to the moving distance and the difference in elevation, and if it is determined to grant a privilege, the privilege to be granted may be determined according to the moving distance and the difference in elevation.
[0216] <Effects of this embodiment> According to this embodiment, as shown in step S01, a part of the map image reflecting a terrain having an elevation difference is displayed on the touch screen 15 of the user terminal 100, and the character object 301 is displayed superimposed on the map image. As shown in step S02, operation information according to an input operation from the user to the operating body 302 is specified, and the character object 301 is displayed to move based on the specified operation information. That is, as described in step S11, by displacing the area displayed on the touch screen 15 in a direction according to the input operation (operation information) to the operating body 302, the character object 301 can be displayed to move along the terrain of the map image. This allows the user to have a realistic feeling due to the undulating terrain, and provides the fun of considering elevation differences when considering a moving route, thereby realizing a variety of game properties.
[0217] 17 and 19, it is possible to display the character object 301 moving at a moving speed according to the difference in elevation of the terrain in the direction (moving direction) specified by the input operation (operation information) to the operating body 302. As a result, since the moving speed changes according to the difference in elevation, it is possible to create a sense of realism that the character object 301 is moving according to the terrain, and it is possible to increase the interest of the game.
[0218] 19, according to this embodiment, the moving speed is calculated and determined based on the current moving speed of the character object 301 and the elevation difference of the topography of the map image, and the character object 301 can be displayed moving at that moving speed. This makes it possible to express inertia in the real space, such as gaining momentum and climbing uphill, and increases the realism of the moving mode of the character object 301.
[0219] 18 and 19, even if the character object 301 is at a point displayed on the display screen when the altitude of the character object 301 reaches a predetermined value, the character object 301 cannot move to a point where the altitude of the character object 301 is equal to or greater than the predetermined value because the character object 301 is restricted from moving in that direction. This allows the player to experience a game-like nature in which the character object 301 must reconsider its route of movement when the character object 301 grasps that the altitude of the character object 301 has reached a predetermined value and the character object 301 is restricted from moving, thereby improving the interest of the game.
[0220] 19, the predetermined value for restricting the movement of the character object 301 is 1000 m when the specific condition is not met, whereas it is 2000 m when the specific condition is met. As a result, it is possible to provide the user with an incentive to meet the specific condition.
[0221] According to this embodiment, the specific condition is met by associating a specific type of game object with the character object 301. For example, the specific condition is met by equipping the character object 301 with mountain climbing boots. The specific condition is also met when the character object used by the user is a specific type of character object. For example, the specific condition is met when a character object having an attribute that is good at mountain climbing is selected. This can provide a user with an incentive to obtain a specific type of game object or a specific type of character object, or to use it in a movement game.
[0222] According to this embodiment, as shown in step S14 in Figures 18 and 19, when the height of the character object 301 reaches a predetermined value, a slide effect is executed in which the character object 301 swings its arms around and then slides down, causing the character object 301 to slide down to a position where its height is lower than the predetermined value. This makes the game more interesting than when movement is simply restricted.
[0223] According to this embodiment, the character object 301 can move on condition that the stamina gauge 312 is equal to or greater than a specific value, and the amount of stamina gauge 312 consumed varies depending on the distance traveled and the elevation difference of the terrain. This requires the player to consider the route of travel while taking into account the consumption of the stamina gauge 312, which can improve the entertainment value of the game.
[0224] 19, a benefit advantageous to the user is given according to the difference in elevation of the terrain accompanying the movement of the character object 301. This makes it possible to motivate the user to take a route having an elevation difference.
[0225] According to this embodiment, a special benefit is given to the user according to the distance (cumulative distance, moving route) along the route along which the character object 301 has been moved. This increases the options for the moving route, making the game more interesting.
[0226] Furthermore, according to this embodiment, the posture of the character object 301 is changed in accordance with the elevation difference of the terrain, thereby enhancing the sense of realism of the character object 301 moving over terrain having elevation differences.
[0227] Furthermore, according to this embodiment, an image of the map image and character object 301 viewed from a predetermined oblique direction is displayed on the touch screen 15, and the displayed character object 301 may not be displayed when the altitude of the terrain located below the predetermined position on the touch screen 15 where the character object 301 is displayed is higher than the altitude of the terrain located above the predetermined position on the touch screen 15. This makes it easier to understand by fixing the viewpoint, and can increase the sense of realism by creating a situation where the character object 301 is not displayed depending on the terrain.
[0228] According to this embodiment, boundary image 304 is a circular image that surrounds a predetermined range centered on the position of character object 301, and the shape of the boundary image changes according to the elevation difference of the terrain that intersects with the boundary as character object 301 moves. This enhances the sense of realism that the character object is moving across terrain with elevation differences.
[0229] <Other embodiments> In the above embodiment, an example was given of a movement game in which a character object can be freely moved on a 3D map image in response to input operations from the user to the touch panel 15, but the invention is not limited to this and may also be a game (hereinafter also referred to as a location information game) in which a character object can be moved on a 3D map image in conjunction with the position of the user terminal 100 in response to the user owning the user terminal 100 actually moving through real space.
[0230] The system 1 according to this embodiment can provide a location information game in addition to the above-mentioned game. In the user terminal 100, by tapping a location information game start icon on the menu screen, the screen moves to an event selection screen, and when any event is selected, a location information game corresponding to the event starts. In the location information game, as in the above-mentioned movement game, a 3D map image reflecting a terrain having an elevation difference is displayed on the touch screen 15 based on map image information including altitude information for identifying the altitude (elevation difference) at each point on the map in addition to information for displaying the map image.
[0231] In a location-based game, a position on a 3D map image drawn in a predetermined area such as the memory 11, which corresponds to the position of the user terminal 100 in real space, is displayed in the display area of the touch screen 15. Specifically, the 3D map image is displayed on the touch screen 15 so that the position on the 3D map image corresponding to the position of the user terminal 100 in real space is a predetermined position (e.g., approximately the center position) in the display area of the touch screen 15.
[0232] The position of the user terminal 100 in the real space is specified, for example, by using information from a GPS module of the user terminal 100. When a user who owns the user terminal 100 actually moves within the real space, the user terminal 100 displays the character object 301 moving along the terrain of the 3D map image in conjunction with the movement. More specifically, the user terminal 100 displaces an area of the 3D map image that is displayed on the touch screen 15 in advance of the 3D map image drawn in the memory 11 or the like in a manner according to the position information of the user terminal 100 (for example, updates the display according to the current position information of the user terminal 100), thereby displaying the character object 301 displayed at a predetermined position as if it is moving along the terrain of the 3D map image. This differs from the previously described movement game in that the character object 301 is moved in conjunction with the position information of the user terminal 100 on the 3D map image, but a display screen similar to the display screen described in FIG. 17 is displayed. As a result, a screen can be displayed in which the character object 301 is moving on a 3D map image similar to the terrain on which the user is actually moving, giving the user the sensation of moving through a more realistic space.
[0233] Also, in the position information game, a mission (e.g., a destination to be reached, an item to be acquired, etc.) is set according to an event selected at the start, and by accomplishing the mission, a privilege is given to the user according to the event, the moving route, the elevation difference, etc. As a result, when the user considers the moving route, it is possible to provide an interesting feature that the user can appropriately select the moving route by considering not only the straight-line distance but also the elevation difference, and it is possible to realize a variety of game properties. On the other hand, in the position information game, the posture of the character object 301 is changed according to the elevation difference (e.g., uphill, downhill, slope, inclination angle, etc.) between the position where the character object 301 is located and the position in the moving direction, the elevation difference in the left and right direction intersecting the moving direction, etc. This can improve the sense of realism. Hereinafter, the position information game will be specifically described with reference to FIG. 20.
[0234] (Location information game processing) 20 is a flowchart showing an example of a location information game process executed by the user terminal 100. The location information game process is executed by the user terminal 100 during the location information game, but is not limited to this. A part of the process may be executed by the server 200, and the process result may be transmitted to the user terminal 100.
[0235] In step S21, 3D map image information reflecting the terrain is acquired from the server 200 to draw a 3D map image, and current position information (e.g., address information, latitude and longitude information, etc.) of the user terminal 100 is identified using a GPS module or the like of the user terminal 100, and a 3D map image of a position (area) corresponding to the current position is displayed on the touch screen 15, and the character object 301 is superimposed on the position (predetermined position). As a result, for example, when the user terminal 100 is present in real space corresponding to the position where the character object 301 shown in Fig. 17(a) is located, the display screen shown in Fig. 17(a) is displayed.
[0236] In step S22, the character object 301 is displayed as if it is moving according to the current position of the user terminal 100. Specifically, the area displayed on the touch screen 15 is displaced in a manner according to the current position information so that the position on the 3D map image corresponding to the current position based on the current position information of the user terminal 100 becomes a predetermined position on the touch screen 15, and the character object 301 is displayed as if it is moving along the terrain of the 3D map image. As a result, for example, when the orientation of the user terminal 100 changes, the display screen shown in FIG. 17(b) is displayed in conjunction with this, when the user who owns the user terminal 100 goes up an uphill slope, the display screen shown in FIG. 17(d) is displayed in conjunction with the user who owns the user terminal 100 going down a downhill slope, and the display screen shown in FIG. 17(f) is displayed in conjunction with the user who owns the user terminal 100 moving on flat ground. The moving speed of the character object 301 is the actual moving speed of the user terminal 100.
[0237] In step S23, it is determined whether the actual moving speed of the user terminal 100 is equal to or higher than a predetermined speed, which is a threshold value higher than the average walking speed. For example, it is determined from the current position information of the user terminal 100 whether the average speed of the user is equal to or higher than a predetermined speed, which is a threshold value higher than the average walking speed (for example, 5 km per hour). If it is determined that the speed is equal to or higher than the predetermined speed, the process proceeds to step S25, where the user is alerted, and the process proceeds to step S29. As a method of alerting the user, a warning content (for example, a message such as "Please walk!") may be displayed on the touch screen 15, or a sound for alerting the user (including a voice such as "Please walk!") may be output. Note that, when it is determined that the moving speed is equal to or higher than the predetermined speed, the process proceeds to step S29 and the processes of steps S24 to S28 are not performed, so that the movement during the period determined to be equal to or higher than the predetermined speed and the difference in elevation accompanying the movement are not added as a movement by walking, and are not taken into consideration in the process of granting a privilege advantageous to the user.
[0238] If it is not determined that the speed is equal to or greater than the predetermined speed, in step S24, the movement distance of the user terminal 100 from the current position of the user terminal 100 is accumulated. Next, the process proceeds to step S26, where the altitudes of the points before and after the movement are identified based on the altitude information included in the map image information to determine whether or not there is a difference in altitude. If it is not determined that there is a difference in altitude, the process proceeds to step S29.
[0239] When it is determined that there is a difference in elevation, in step S27, an action during movement according to the difference in elevation is executed. For example, an action during movement of the character object during movement (for example, the posture of the character object 301) is specified according to the difference in elevation. As described above, the posture of the character object is basically a posture standing upright in the vertical direction, but in step S27, whether or not to change to a posture that appears off balance or a posture that stumbles left and right is specified according to the difference in elevation in the moving direction or the difference in elevation in the left and right direction intersecting the moving direction. Note that the frequency with which the posture of the character object changes may differ according to the current moving speed and the degree of the difference in elevation, and may be more frequent, for example, as the current moving speed is faster and as the difference in elevation is larger (i.e., as the inclination is larger).
[0240] In step S28, the elevation difference is accumulated. Next, the process proceeds to step S29, where it is determined whether the mission has been accomplished. If it is determined that the mission has not been accomplished, the process returns to step S22. If it is determined that the mission has been accomplished, in step S30, a special benefit advantageous to the user is provided in accordance with the travel distance accumulated in step S24 during the movement until the mission is accomplished and the elevation difference accumulated in step S26.
[0241] In step S30, the advantage of the bonus is determined according to the accumulated travel distance and the elevation difference by the mission completion, and the bonus of the advantage is awarded. However, the present invention is not limited to this. It may be determined whether to award the bonus according to the accumulated travel distance and the elevation difference, and if it is determined to award the bonus, the bonus to be awarded may be determined according to the travel distance and the elevation difference. In step S30, an example in which the bonus is awarded according to the accumulated travel distance and the elevation difference has been described, but the present invention is not limited to this. The travel distance is not limited to the accumulated distance, and may be the straight line distance between the two points of the start point and the destination point when the mission is completed by reaching the destination. The elevation difference is not limited to the accumulated distance, and may be the elevation difference between the start point and the destination point, or may be the elevation difference between the minimum altitude and the maximum altitude on the travel route when the mission is completed by reaching the destination.
[0242] <Effects of the embodiment of the location-based game> According to the position information game, as shown in step S21, a part of the map image reflecting a terrain having an elevation difference, which corresponds to the current position of the user terminal 100, is displayed on the touch screen 15 of the user terminal 100, and the character object 301 is displayed superimposed at the position corresponding to the current position of the user terminal 100. As shown in step S22, the current position information of the user terminal 100 is specified by a GPS module or the like of the user terminal 100, and the character object 301 is displayed so as to move based on the specified current position information. That is, as explained in step S22, the area displayed on the touch screen 15 is displaced according to the current position information of the user terminal 100, so that the character object 301 can be displayed so as to move along the terrain of the map image. This makes it possible to display a screen in which the character object 301 moves on a 3D map image similar to the terrain on which the user is actually moving, so that the user can have the feeling that he or she is moving in a more realistic space. In addition, it is possible to provide an interesting feature of considering elevation differences when considering a moving route, and as a result, it is possible to realize a variety of game properties.
[0243] According to the position information game, as shown in step S30 of Fig. 20, a benefit advantageous to the user is given according to the difference in elevation of the terrain accompanying the movement of the character object 301. This makes it possible to motivate the user to take a route that actually has an elevation difference.
[0244] According to the position information game, a special benefit is given to the user according to the distance (accumulated distance, moving route) on the route along which the character object 301 has moved. This increases the options for the moving route, making the game more interesting.
[0245] Furthermore, in a position information game, the posture of the character object 301 is changed according to the elevation difference of the terrain, thereby enhancing the sense of realism of the character object 301 moving over terrain having elevation differences.
[0246] Furthermore, even in a location information game, when an image of a map image and a character object 301 viewed from a predetermined oblique direction is displayed on the touch screen 15, the character object 301 may not be displayed if the altitude of the terrain located below the predetermined position on the touch screen 15 where the character object 301 is displayed is higher than the altitude of the terrain located above the predetermined position on the touch screen 15. This makes it easier to understand by fixing the viewpoint, and can increase the sense of realism by creating a situation where the character object 301 is not displayed depending on the terrain. In addition, the boundary image 304 is a circular image that surrounds a predetermined range centered on the position of the character object 301, and changes the shape of the boundary image according to the difference in elevation of the terrain that intersects with the boundary as the character object 301 moves. This increases the sense of realism that the character object 301 is moving on terrain with elevation differences.
[0247] <Modification> Modifications of the above-described embodiment are listed below.
[0248] (1) In the movement game of the above embodiment, as shown in step S09, an example has been described in which the moving speed of the character object 310 is calculated and determined depending on the elevation difference during movement, but the elements for calculating and determining the moving speed are not limited to this, and for example, the distance moved by the operating body 302 from a reference position may also be taken into consideration. For example, even if the current moving speed and elevation difference are the same, the greater the moving distance of the operating body 302, the faster the moving speed may be calculated and determined. This provides an interesting feature in that the moving speed of the character object 310 can be adjusted depending on the user's operating mode.
[0249] (2) In the above embodiment, as shown in step S10, the posture of the character object 310 is given as an example of an action during movement that depends on the difference in elevation, etc. However, the action during movement is not limited to this, and the pose (posture) of the character object 310 during movement, etc. may be changed depending on the difference in elevation.
[0250] (3) In the above embodiment, an example has been described in which the altitude or elevation difference in step S07 etc. of Fig. 19 and step S26 etc. of Fig. 20 is specified based on altitude information included in the map image information. However, the altitude or elevation difference in step S07 etc. of Fig. 19 and step S26 etc. of Fig. 20 may be specified based on a sensor, an app, etc. installed in the user terminal 100.
[0251] (4) In the above embodiment, an example was described in which the process for granting a bonus is performed in step S15 or step S30 upon mission completion. However, the process for granting the bonus may be performed by taking into consideration the path traveled by the character object 301 from the start of the event until the completion of the mission (i.e., the path followed). For example, the rate at which the bonus is granted or the degree of advantage of the bonus granted may be varied depending on whether or not a specific point has been passed or whether or not a detour has been made. This can further enhance the fun of considering the type of path to be taken.
[0252] (5) In the position information game of the above embodiment, the moving distance and the elevation difference, which are elements for awarding the bonus in step S30, are specified on the user terminal 100 side as shown in steps S24 and S28. However, this is not limited to this, and in the position information game, the current position information and the altitude information of the user terminal 100 accompanying the movement may be sequentially transmitted to the server 200, and the moving distance and the elevation difference of the user terminal 100 may be specified on the server 200 side, and when the mission is completed, the moving distance and the elevation difference specified on the server 200 may be transmitted to the user terminal 100. This can prevent the moving distance and the elevation difference from being illegally tampered with. Note that in the movement game, the moving distance and the elevation difference, which are elements for awarding the bonus in step S15, are not limited to being specified on the user terminal 100 side, and may be specified on the server 200 side, and when the mission is completed, the moving distance and the elevation difference specified on the server 200 may be transmitted to the user terminal 100.
[0253] (6) In the movement game of the above embodiment, an example was described in which the movement speed of the character object 301 changes depending on the terrain. However, the movement speed of the character object may be changed not only depending on the elevation difference of the terrain but also depending on the type of terrain such as a river, forest, swamp, sand, etc. For example, the movement speed may be faster in terrain other than a river or forest than in terrain such as a river or forest. In addition, the movement speed may be faster when moving along the flow of a river and slower when moving against the flow of the river.
[0254] (7) In the position information game of the above embodiment, as shown in step S23, the moving distance and the elevation difference associated with the movement when the moving speed is not equal to or higher than the predetermined speed are accumulated and taken into consideration in the process of granting the bonus, while the moving distance and the elevation difference associated with the movement when the moving speed is equal to or higher than the predetermined speed are not accumulated and are not taken into consideration in the process of granting the bonus. An example was described in which the threshold value faster than the average walking speed was set as the reference predetermined speed. However, the predetermined speed in the position information game is not limited to the threshold value based on the average walking speed, but may be a threshold value set based on the speed according to the mode of moving faster than walking. The predetermined speed may be, for example, a speed faster than the average running speed assuming that the user runs (e.g., 15 km / h, etc.), or may be a speed faster than the average bicycle speed assuming that the user moves on a bicycle (e.g., 40 km / h, etc.). The predetermined speed may be set appropriately in consideration of the user's moving mode, etc.
[0255] The present invention is not limited to the above-described embodiments, and various modifications are possible within the scope of the claims. Embodiments obtained by appropriately combining the technical means disclosed in different embodiments are also included in the technical scope of the present invention.
[0256] <Additional Notes> The matters described in the above embodiments will be supplemented below.
[0257] (Appendix 1): According to one aspect of an embodiment of the present disclosure, there is provided a game program executed on an information processing device having a processor, a memory, and an input unit, which causes the processor to execute steps of displaying a map image of a portion of a map image reflecting a terrain with elevation differences in a display area, and displaying a character object at a predetermined position in the display area (steps S01, S21), and specifying operation information corresponding to a user's movement (steps S02, S22), wherein the displaying step displaces the area of the map image to be displayed in the display area in a manner corresponding to the operation information specified in the specifying step, thereby enabling the character object at the predetermined position to be displayed as moving along the terrain of the map image (steps S11, S22, S27).
[0258] (Appendix 2): In (Appendix 1), the movement information is information corresponding to a user's operation on the input unit and includes information for specifying a direction in which to move the character object, and the displaying step can display the character object moving at a speed corresponding to the difference in elevation of the terrain in the direction specified from the movement information.
[0259] (Appendix 3): In (Supplementary Note 2), the displaying step can specify a speed according to a current speed of the character object and a difference in elevation of the topography of the map image, and display the character object as moving at that speed.
[0260] (Appendix 4): In any of (Appendix 1) to (Appendix 3), the operation information is information corresponding to a user's operation on the input unit and includes information for identifying a direction in which to move the character object, and the displaying step restricts the movement of the character object in a direction identified from the operation information when the altitude of the terrain in that direction reaches a predetermined value.
[0261] (Appendix 5): In (Supplementary Note 4), the predetermined value is higher when the specific condition is satisfied than when the specific condition is not satisfied.
[0262] (Appendix 6): In (Appendix 5), the processor executes a step of associating one of multiple types of game objects having different degrees of advantage in a game with the character object, and the specific condition includes a condition that is met when a specific type of game object is associated with the character object among the multiple types of game objects.
[0263] (Appendix 7): In (Appendix 5) or (Appendix 6), the processor is caused to execute a step of identifying a character object to be displayed in the displaying step from among a plurality of types of character objects, and the specific condition includes a condition that is satisfied when the character object displayed in the displaying step is a specific type of character object from among the plurality of types of character objects.
[0264] (Appendix 8): In any of (Appendix 4) to (Appendix 7), the displaying step restricts movement of the character object in the direction specified by the movement information by having the character object perform a predetermined action when the altitude of the terrain in the direction specified by the movement information reaches the predetermined value, and then executing an effect in which the character object slides down to a position where the altitude is a predetermined value lower than the predetermined value.
[0265] (Appendix 9): In any of (Appendix 2) to (Appendix 8), the displaying step can display the character object moving, on condition that a value of a parameter associated with the character object is equal to or greater than a specific value, and causes the processor to execute a step of consuming the value of the parameter in accordance with the elevation difference of the terrain accompanying the movement by moving the character object.
[0266] (Appendix 10): In (Supplementary Note 1), the operation information includes information for identifying the position in real space where the information processing device is located, the map image to be displayed in the display area is a map image of an area corresponding to the position identified from the operation information, and the displaying step updates and displays the map image to be displayed in the display area in a manner corresponding to the operation information, thereby enabling the character object to be displayed so as to move in conjunction with the movement of the information processing device.
[0267] (Appendix 11): In any of (Supplementary Note 1) to (Supplementary Note 10), the processor is caused to execute a step of granting an advantageous benefit to the user according to the difference in elevation of the terrain that accompanies the movement of the character object by moving the character object.
[0268] (Appendix 12): In any one of (Supplementary Note 1) to (Supplementary Note 11), the processor is caused to execute a step of granting a benefit advantageous to the user according to a movement path along which the character object has been moved.
[0269] (Appendix 13): In any one of (Supplementary Note 1) to (Supplementary Note 12), the displaying step changes a posture of the character object during movement in accordance with a difference in elevation of the terrain.
[0270] (Appendix 14): In any of (Appendix 1) to (Appendix 13), the displaying step displays an image of the map image and the character object viewed from a predetermined oblique direction in the display area, and the character object displayed by the displaying step may be hidden when the altitude of a terrain located below a predetermined position in the display area where the character object is displayed is higher than the altitude of a terrain located above the predetermined position in the display area.
[0271] (Appendix 15): In any of (Appendix 1) to (Appendix 14), the displaying step can display a boundary image for identifying a boundary that is a predetermined range centered on a predetermined position of the character object, and by moving the character object, the shape of the boundary image is changed according to the difference in elevation of the terrain that intersects with the boundary.
[0272] (Appendix 16): According to one aspect of an embodiment of the present disclosure, there is provided a gaming method executed on an information processing device having a processor, a memory, and an input unit, the gaming method including the steps of: displaying, in a display area, a map image of a portion of a map image reflecting a terrain having elevation differences; and displaying a character object at a predetermined position in the display area (steps S01, S21); and specifying operation information corresponding to a user's movement (steps S02, S22). The displaying step displaces the portion of the map image to be displayed in the display area in a manner corresponding to the operation information specified in the specifying step, thereby enabling the character object at the predetermined position to be displayed as moving along the terrain of the map image (steps S11, S22, S27).
[0273] (Appendix 17): According to an aspect of an embodiment of the present disclosure, an information processing device includes a storage unit that stores a game program, and a control unit that executes the game program to control an operation of the information processing device, and the control unit executes a step of displaying a map image of a part of an area of a map image reflecting a terrain having an elevation difference in a display area, and displaying a character object at a predetermined position in the display area (steps S01 and S21), and a step of specifying operation information according to a user's movement (steps S02 and S22). The displaying step displaces an area of the map image to be displayed in the display area in a manner according to the operation information specified in the specifying step, so that the character object at the predetermined position can be displayed as moving along the terrain of the map image (steps S11, S22, S27). ).
[0274] [Software implementation example] The control blocks (particularly control units 110, 210, 310, 410) of the user terminal 100, server 200, game playing terminal 300 (HMD set 1000), and distribution terminal 400 may be realized by logic circuits (hardware) formed in an integrated circuit (IC chip) or the like, or by software.
[0275] In the latter case, the user terminal 100, the server 200, the game play terminal 300 (HMD set 1000), and the distribution terminal 400 are equipped with a computer that executes instructions of a program, which is software that realizes each function. This computer is equipped with, for example, one or more processors, and a computer-readable recording medium that stores the above program. In the computer, the processor reads the above program from the recording medium and executes it, thereby achieving the object of the present invention. The processor can be, for example, a CPU (Central Processing Unit). The recording medium can be a "non-transient tangible medium," such as a ROM (Read Only Memory), as well as a tape, a disk, a card, a semiconductor memory, a programmable logic circuit, etc. In addition, a RAM (Random Access Memory) in which the above program is expanded, etc. may also be included. The above program may be supplied to the computer via any transmission medium (such as a communication network or a broadcast wave) that can transmit the program. Note that one aspect of the present invention can also be realized in the form of a data signal embedded in a carrier wave, in which the above program is embodied by electronic transmission.
[0276] The present invention is not limited to the above-described embodiments, and various modifications are possible within the scope of the claims. Embodiments obtained by appropriately combining the technical means disclosed in different embodiments are also included in the technical scope of the present invention. [Explanation of symbols]
[0277] 1 system, 2 network, 3, 3A, 3B user (first user), 4 player (actor), 10, 20, 30, 40 processor, 11, 21, 31, 41 memory, 12, 22, 32, 42 storage, 13, 23, 33, 43 communication IF, 14, 24, 34, 44 input / output IF, 15, 45 touch screen, 17 camera, 18 distance measurement sensor, 51 monitor, 52 gaze sensor, 53 first camera, 54 second camera, 55 microphone, 56 speaker, 100, 100A, 100B, 100C user terminal (computer, first computer, first information processing device), 110, 210, 310, 410 control unit (first control unit, second control unit), 111, 311, 413 operation reception unit, 112, 312, 412 Display control unit, 113, 313 UI control unit, 114, 314 Animation generation unit, 115, 315 Game progress unit, 116, 316 Virtual space control unit, 117 Video playback unit, 120, 220, 320, 420 Memory unit (first memory unit, second memory unit), 131, 231, 331 Game program (program, first program), 132, 232, 332 Game information, 133, 233, 333 User information, 151, 451 Input unit, 152, 452 Display unit (display), 200 Server, 211 Communication mediation unit, 212 Log generation unit, 213 List generation unit, 234, 421 User list, 300 Game play terminal (external device, second external device), 317 Response processing unit, 400 Distribution terminal (external, first external device, computer, second information processing device), 411, communication control unit, 414, voice reception unit, 415, motion identification unit, 416, action instruction data generation unit, 422, motion list, 423, distribution program (program, second program), 540, 1020, 1021, controller, 500, HMD, 510, HMD sensor, 520, motion sensor, 530, display, 600A, 600B, virtual space, 610, avatar object (character), 620A, 620B, virtual camera, 631, 632, 633, 634, object, 640A, 640B, field of view area, 650, 660, field of view image, 671, enemy object, 672, 673, obstacle object, 674, performance object, 691, 692 Speech, 701, 702, 703A, 70B,704A, 704B, 705, 706, 711, 711A, 711B, 711C, 711D, 722, 723, 745, 745A, 745B, 745C, 752, 762, 763, 930, 2011, 2022, 2031, 2032, 2033, 2034, 2037, 2038, 2051, 2063, 2072, 2073, 2075 UI image (message UI, UI), 721 Download screen, 731 User list screen (list), 732, 732A, 732B, 732C, 742, 742A, 742B, 742C Record image, 733, 733A, 733B, 733C User name, 734, 734A, 734B, 734C Tag information, 735, 735A, 735B, 735C Icon, 741 Motion list screen (options), 743, 743A, 743B, 743C Motion name, 744, 744A, 744B, 744C, 753 Motion image, 751 Distribution screen, 761 Distribution completion screen, 801 User icon, 802 First range, 803 Landmark, 804 Normal character, 805, 830 Regional character, 806 Operation icon, 807 Predetermined range, 808 Special object, 809 Second range, 810A, 810B Motion video, 820A, 820B Speech audio, 821 Icon showing user's character, 822 Icon showing status, 823 Command option 1 icon, 824 Command option 2 icon, 825 park, 826, 840 terrain character, 910A, 910B video, 920A, 920B audio, 1000 HMD set, 1010 object, 1030 storage medium,
Claims
1. The processor, a display means for displaying, in a display area, a map image of a part of a map image reflecting a terrain having elevation differences, and displaying a character object at a predetermined position in the display area; and a determination means for determining motion information corresponding to a user's motion, the display means is capable of displaying the character object at the predetermined position as if it were moving along a topography of the map image by changing an area of the map image to be displayed in the display area in a manner corresponding to the action information specified by the specifying means, The game program provides a user with a special benefit according to the difference in elevation of the terrain that accompanies the character object's movement by moving the character object.
2. the action information is information corresponding to a user's operation and includes information for specifying a direction in which the character object is to be moved, 2 . The computer-readable storage medium according to claim 1 , wherein the display means is capable of displaying the character object so as to move at a speed according to a difference in elevation of the terrain in a direction specified by the action information.
3. 3. The computer-readable storage medium according to claim 2, wherein the display means is capable of specifying a speed according to a current speed of the character object and a difference in elevation of the topography of the map image, and displaying the character object as if it were moving at that speed.
4. the action information is information corresponding to a user's operation and includes information for specifying a direction in which the character object is to be moved, The game program according to any one of claims 1 to 3, wherein the display means restricts movement of the character object in a direction specified by the action information when the altitude of the terrain in that direction reaches a predetermined value.
5. 5. The game program according to claim 4, wherein the predetermined value is higher when the specific condition is met than when the specific condition is not met.
6. 6. The game program according to claim 5, wherein the specific condition includes a condition that is met when a specific type of game object among a plurality of types of game objects having different degrees of advantage in a game is associated with the character object.
7. 7. The computer-readable storage medium according to claim 5, wherein the specific condition includes a condition that is satisfied when the character object displayed by the display means is a character object of a specific type among a plurality of types of character objects.
8. the display means is capable of displaying the character object so as to move on condition that a value of a parameter associated with the character object is equal to or greater than a specific value; 8. The game program according to claim 2, wherein, by moving the character object, the parameter value is consumed in accordance with a difference in elevation of the terrain that accompanies the movement.
9. the operation information includes information for identifying a position of the user in real space; the map image displayed in the display area is a map image of an area corresponding to a position specified from the motion information, The game program according to claim 1 , wherein the display means is capable of displaying a character object moving in conjunction with the movement of the user by updating and displaying a map image displayed in the display area in a manner corresponding to the action information.
10. 10. The game program according to claim 1, further comprising: a bonus that is advantageous to the user depending on the moving path of the character object.
11. The game program according to any one of claims 1 to 10, wherein the display means is capable of displaying a boundary image for identifying a boundary that is a predetermined range centered on a predetermined position of the character object, and by moving the character object, the shape of the boundary image is changed according to the difference in elevation of the terrain that intersects with the boundary.
Citation Information
Patent Citations
Game device using location detecting device, and storage medium
JP2002273034A
Game program and game device
JP2014008072A
Server device, control method thereof, and program
JP2018015230A
Game device and program
JP2018110719A