Information processing program, information processing method, and information processing device
By generating point data using vertex and midpoint data from region data, the information processing program addresses the inefficiency of conventional path search data generation, achieving reduced working time and efficient path searching in virtual spaces.
Patent Information
- Application Number
- JP2023194662
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-11-15
- Publication Date
- 2025-05-27
AI Technical Summary
Conventional methods for generating data for path search in virtual spaces require a large number of dedicated points to be independently generated, leading to significant working time expenditures.
An information processing program that generates point data indicating points within regions of a virtual space, using vertex and midpoint data derived from region data, to facilitate path searching for characters within the virtual space.
This approach reduces the working time required for generating path search data compared to traditional methods, while ensuring efficient path searching within the virtual space.
Smart Images

Figure 2025081115000001_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to an information processing program, an information processing method, and an information processing apparatus.
Background Art
[0002] Patent Document 1 discloses a war simulation game in which commands are given to the affiliated army to attack and defend a territory.
Prior Art Documents
Patent Documents
[0003]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0004] Conventionally, when moving a character in a virtual space, dedicated points for path search are independently generated in the virtual space, and a path is searched using the generated points. However, in the conventional technology, there is a problem that a large number of points need to be independently generated in the virtual space, resulting in a lot of working hours.
[0005] Therefore, an object of the present disclosure is to provide a program, a method, and an apparatus that can generate data for path search in less working time compared to the case of independently generating dedicated points for path search.
Means for Solving the Problems
[0006] An information processing program according to a first aspect causes a computer to generate point data indicating points included in a plurality of regions based on region data indicating the plurality of regions in a game played on a virtual space divided into the plurality of regions, and search for a path for a character to move on the virtual space using the point data.
[0007] The information processing program according to the second aspect causes the computer to extract, as the point data, vertex data indicating vertices in each of the plurality of regions from the region data in the information processing program according to the first aspect.
[0008] The information processing program according to the third aspect causes the computer to generate, as the point data, midpoint data indicating midpoints of sides connecting adjacent vertices in the information processing program according to the second aspect.
[0009] The information processing program according to the fourth aspect causes the computer to search for the path so as to pass through at least one of the vertices and the midpoints in the information processing program according to the third aspect.
[0010] The information processing program according to the fifth aspect causes the computer to search for a path so as to pass through at least one of the vertices and the midpoints in the regions acquired by the player among the plurality of regions and to pass through only the vertices in the regions not acquired by the player among the plurality of regions when the game progresses by the player acquiring each of the plurality of regions in the information processing program according to the fourth aspect.
[0011] The information processing program according to the sixth aspect causes the computer to display the regions acquired by the player so that at least one of between the vertices and the midpoints and between different midpoints is in a different mode from others in the information processing program according to the fifth aspect.
[0012] The information processing program according to the seventh aspect causes the computer to give a reward advantageous to the progress of the game to the player when the character passes through at least one of between the vertices and the midpoints and between different midpoints in the information processing program according to the fifth or sixth aspect.
[0013] The information processing program according to the eighth aspect is the information processing program according to any one of the fourth to seventh aspects, and causes the computer to search for the path so as to pass through a line connecting any of the vertices or the midpoints in one of the plurality of regions.
[0014] The information processing program according to the ninth aspect is the information processing program according to the eighth aspect, and causes the computer to search for the path so that movement in a region other than the region including the starting point and the region including the destination point among the plurality of regions is only on the line.
[0015] The information processing program according to the tenth aspect is the information processing program according to any one of the first to ninth aspects, and each of the plurality of regions is a region obtained by dividing a range in which the character can enter on the virtual space.
[0016] The information processing program according to the eleventh aspect is the information processing program according to any one of the first to tenth aspects, and causes the computer to perform a battle when hostile characters come into contact or approach each other on the virtual space.
[0017] The information processing program according to the twelfth aspect is the information processing program according to any one of the first to eleventh aspects, and causes the computer to search for the path without using the point data when the distance on the virtual space between the starting point and the destination point does not satisfy a predetermined criterion.
[0018] The information processing method according to the thirteenth aspect is that a computer generates point data indicating points included in a plurality of regions based on region data indicating the plurality of regions in a game played on a virtual space divided into the plurality of regions, and searches for a path for a character to move on the virtual space using the point data.
[0019] The information processing apparatus according to the 14th aspect includes a processor, and the processor generates point data indicating points included in the plurality of regions based on region data indicating the plurality of regions in a game played on a virtual space divided into the plurality of regions, and searches for a path for a character to move on the virtual space using the point data.
Effect of the Invention
[0020] According to the information processing program, information processing method, and information processing apparatus according to the present disclosure, it is possible to generate data for path search in less working time compared to the case of independently generating dedicated points for path search.
Brief Description of the Drawings
[0021]
Figure 1
Figure 2
Figure 3
Figure 4
Figure 5
Figure 6
Figure 7
Figure 8
Figure 9
Figure 10
Mode for Carrying Out the Invention
[0022] Hereinafter, an example of an embodiment of the present disclosure will be described with reference to the drawings. In each of the drawings, the same or equivalent components and parts are given the same reference numerals. Also, the dimensional ratios in the drawings are exaggerated for convenience of explanation and may be different from the actual ratios.
[0023] FIG. 1 is a diagram showing an example of the schematic configuration of the game system 10 according to the present embodiment. Here, a game is a collection of activities and rules for playing or competing. A game is played, for example, by a player making full use of strategies and techniques to achieve a specific goal. Games are played, for example, to achieve various goals such as competitive goals such as winning, combat goals such as defeating enemies, educational goals such as learning, and narrative goals such as completing the progression of a scenario. A game may be in a competitive format or a non-competitive format.
[0024] The game system 10 includes a communication means 20, a server device 30, and a terminal device 40. Hereinafter, as an example, a case will be described in which the game system 10 plays a game themed on a historical territorial battle in which a player acquires (territorializes) each of a plurality of regions 60 by suppressing bases provided in each of the plurality of regions 60 obtained by dividing a virtual space (such as a world map). However, it is not limited to this. The game system 10 may play any game played on a virtual space divided into a plurality of regions 60.
[0025] The communication means 20 communicably connects a plurality of computers. In this figure, the communication means 20 connects between the server device 30 and the terminal device 40. The communication means 20 may be, for example, the Internet. However, the communication means 20 may be any means capable of communicably connecting a plurality of computers, such as a LAN, a WAN, or an intranet.
[0026] The server device 30 transmits and receives data to and from the terminal device 40, executes processing according to the player's operation, and provides the execution result to the terminal device 40. More specifically, the server device 30 may execute download processing of a program (application) or the like to the terminal device 40, player login processing, management processing of various databases, and the like.
[0027] The server device 30 may be realized by, for example, cloud computing. In this figure, the case where the server device 30 is one device is shown as an example, but the server device 30 may perform the above-described processing in a distributed manner by a plurality of devices. Also, in this figure, the case where the game to be played is provided as a so-called online game is shown as an example, but it is not limited thereto. If the game to be played can be played offline, the game system 10 may not include the server device 30. That is, in the present disclosure, the server device 30 is not an essential configuration.
[0028] The terminal device 40 is a device for a player to play a game to be played. In this figure, the case where the terminal device 40 is a smartphone is shown as an example. However, the terminal device 40 may be any device capable of playing a game to be played by a player, such as a mobile phone, a tablet terminal, a notebook computer, an all-in-one computer, a tablet personal computer, or a portable game machine.
[0029] The character 50 is a player character operated by the player. The character 50 moves on the virtual space according to the path searched by the information processing device 100.
[0030] Hereinafter, the case where the terminal device 40 is the information processing apparatus 100 according to the present embodiment will be described as an example. However, the present invention is not limited to this, and the server device 30 may be the information processing apparatus 100 according to the present embodiment. That is, the information processing according to the present embodiment may be processed on the terminal side or on the network side.
[0031] FIG. 2 is a diagram showing an example of the hardware configuration of the information processing apparatus 100 according to the present embodiment. The information processing apparatus 100 includes a processor 101, a ROM (Read Only Memory) 102, a RAM (Random Access Memory) 103, a storage 104, a communication interface 105, and a user interface 106. These components are communicably connected to each other via a bus 109.
[0032] The processor 101 executes various programs and controls each component. The ROM 102 stores various programs and various data. The RAM 103 temporarily stores a program or data as a work area. The storage 104 is composed of an HDD (Hard Disk Drive) or an SSD (Solid State Drive), and stores various programs including an operating system and various data.
[0033] In the information processing apparatus 100 according to the present embodiment, an information processing program is stored in the ROM 102 or the storage 104. The processor 101 reads out the information processing program from the ROM 102 or the storage 104, and executes it using the RAM 103 as a work area, thereby controlling each component according to the information processing program and executing various arithmetic processes.
[0034] The communication interface 105 is an interface for the information processing apparatus 100 to communicate with other apparatuses. The user interface 106 is an input / output interface for the information processing apparatus 100 to exchange information with a user, that is, a player. The user interface 106 may include a touch panel, a keyboard, a microphone, etc. as input devices, and may include a monitor, a speaker, etc. as output devices.
[0035] FIG. 3 is a diagram showing an example of the functional configuration of the information processing apparatus 100 according to the present embodiment. The information processing apparatus 100 includes an acquisition unit 110, a generation unit 120, and a search unit 130. Further, the generation unit 120 may include an extraction unit 122 and a generation unit 124. These functional configurations are realized by the processor 101 reading an information processing program from the ROM 102 or the storage 104, expanding it in the RAM 103, and executing it.
[0036] The acquisition unit 110 acquires area data indicating a plurality of areas 60 in a game played on a virtual space divided into a plurality of areas 60.
[0037] The generation unit 120 generates point data indicating points included in the plurality of areas 60 based on the area data. Note that the "generation" here is not limited to newly generating data that did not exist until then. That is, "generation" may be interpreted broadly to also include generating by extracting, copying, or diverting from existing data.
[0038] The extraction unit 122 extracts vertex data indicating vertices in each of the plurality of areas 60 from the area data as point data.
[0039] The generation unit 124 generates midpoint data indicating midpoints of sides connecting adjacent vertices as point data.
[0040] The search unit 130 searches for a path for the character 50 to move on the virtual space using the point data.
[0041] FIG. 4 is a diagram showing an example of a virtual space divided into a plurality of regions 60. The regions 60 may be partitions obtained by dividing the virtual space according to a predetermined rule. In this figure, an example where the region 60 is defined by a triangle is shown. However, the shape of the region 60 is not limited to this. The region 60 may be defined by any shape that can tile the virtual space, such as a quadrilateral or a hexagon. Also, in this figure, an example where the virtual space is divided into 17 regions 60(1) to 60(17) (collectively referred to as region 60 when there is no need to particularly distinguish them) is shown. However, the number of regions 60 is not limited to this. The virtual space may be divided into a plurality of regions 60 more than 17 or a plurality of regions 60 less than 17.
[0042] Each of such a plurality of regions 60 may be a region that divides a range (e.g., a field) in which the character 50 can enter on the virtual space. In this figure, the shaded portion indicates a prohibited entry range where the character 50 cannot enter. For example, a range corresponding to a mountain range, a river, etc. may be set as such a prohibited entry range.
[0043] The information processing apparatus 100 according to this embodiment executes a process for searching for a route by which the character 50 moves from the starting point S to the destination point G in a virtual space divided into regions 60(1) to 60(17) in this way, for example. This will be described in detail with reference to FIGS. 6 and 7 as appropriate using the flow of FIG. 5.
[0044] FIG. 5 is a diagram showing an example of a flow of information processing executed by the information processing apparatus 100 according to this embodiment. This flow is executed by the processor 101 reading an information processing program from the ROM 102 or the storage 104, expanding it in the RAM 103, and executing it.
[0045] In step S210, the processor 101 determines whether dot data has been generated. If it is determined that the dot data has been generated (Yes), the processor 101 proceeds with the process to step S250. That is, the processor 101 omits the processes of steps S220 to S240. On the other hand, if it is determined that the dot data has not been generated (No), the processor 101 proceeds with the process to step S220.
[0046] In step S220, the processor 101, as the acquisition unit 110, acquires area data indicating a plurality of areas 60 in a game played on a virtual space divided into a plurality of areas 60. When the area data is created outside the information processing apparatus 100, the processor 101 may acquire the area data from an external device via the communication interface 105. When the area data is created inside the information processing apparatus 100, the processor 101 may acquire the area data via the bus 109.
[0047] As an example, when the virtual space is divided into a plurality of areas 60(1) to 60(17) as shown in FIG. 4, the area data may include data indicating each of the plurality of areas 60(1) to 60(17). Here, when the area 60 is defined by a polygon, the area data may include, for example, the coordinates (x, y) of the vertices constituting each of the areas 60(1) to 60(17). Note that the "polygon" mentioned here is preferably a convex polygon. When the area 60 is defined by a convex polygon, since it has no self-intersection and a line segment connecting any two points inside or on the boundary does not go outside the polygon, it is possible to prevent the searched path from passing outside the plurality of areas 60, that is, outside the range where the character 50 can enter.
[0048] In step S230, the processor 101, as the extraction unit 122, extracts vertex data indicating the vertices in each of the plurality of areas 60 from the area data acquired in step S220 as dot data. For example, the processor 101 may extract vertex data for each of the areas 60(1) to 60(17) by exporting the area data. Here, refer to FIG. 6.
[0049] FIG. 6 is a diagram for explaining the dot data generated by the information processing apparatus 100 according to the present embodiment. For example, focusing on the area 60(1), the processor 101 extracts the coordinates (x, y) of the three vertices constituting the area 60(1) from the area data. Here, for convenience of explanation, in each area 60, the vertex located most to the right is referred to as vertex A, and the vertices B and C are called in a clockwise direction from vertex A. In addition, when there are two or more vertices located most to the right, the vertex located most above among them is referred to as vertex A, and the vertices B and C are called in a clockwise direction from vertex A. Here, as shown in this figure, the vertices are named based on the number of the area 60 and the position of the vertex. For example, the vertex located most to the right of the area 60(1) is called "vertex A1". Also, the vertex located most above among the vertices located most to the right of the area 60(13) is called "vertex A13". Note that, in order to prevent the description from becoming complicated, some illustrations are omitted.
[0050] In this case, the processor 101 may extract vertex data A1(xA1, yA1) indicating vertex A1, vertex data B1(xB1, yB1) indicating vertex B1, and vertex data C1(xC1, yC1) indicating vertex C1 for the area 60(1).
[0051] Similarly, for example, focusing on the area 60(13), the processor 101 may extract vertex data A13(xA13, yA13) indicating vertex A13, vertex data B13(xB13, yB13) indicating vertex B13, and vertex data C13(xC13, yC13) indicating vertex C13 for the area 60(13). Return to the description of FIG. 5.
[0052] In step S240, the processor 101 causes the generation unit 124 to generate, as point data, equal division point data indicating equal division points of sides connecting adjacent vertices. For example, the processor 101 may calculate using the vertex data extracted in step S230 to generate equal division point data for each of regions 60(1) to 60(17). Here, referring to FIG. 6 again. Similar to the vertices, the midpoints are named based on the number of region 60 and the position of the midpoint. For example, the midpoint that bisects side A1B1 of region 60(1) is called "midpoint D1". Also, the midpoint that bisects side A13B13 of region 60(13) is called "midpoint D13".
[0053] For example, focusing on region 60(1), the processor 101 may generate equal division point data D1(xD1, yD1) indicating midpoint D1 that bisects side A1B1 using vertex data A1(xA1, yA1) and vertex data B1(xB1, yB1). Also, the processor 101 may generate equal division point data E1(xE1, yE1) indicating midpoint E1 that bisects side B1C1 using vertex data B1(xB1, yB1) and vertex data C1(xC1, yC1). Also, the processor 101 may generate equal division point data F1(xF1, yF1) indicating midpoint F1 that bisects side C1A1 using vertex data C1(xC1, yC1) and vertex data A1(xA1, yA1).
[0054] Similarly, for example, focusing on region 60(13), the processor 101 may generate midpoint data D13(xD13, yD13) indicating the midpoint D13 that bisects side A13B13 using vertex data A13(xA13, yA13) and vertex data B13(xB13, yB13). Also, the processor 101 may generate midpoint data E13(xE13, yE13) indicating the midpoint E13 that bisects side B13C13 using vertex data B13(xB13, yB13) and vertex data C13(xC13, yC13). Further, the processor 101 may generate midpoint data F13(xF13, yF13) indicating the midpoint F13 that bisects side C13A13 using vertex data C13(xC13, yC13) and vertex data A13(xA13, yA13).
[0055] In the above description, as an example, the case where the midpoint that bisects the side is used as the equally divided point is shown, but it is not limited thereto. Any equally divided point obtained by dividing the side into equal intervals such as trisecting or quartering the side may be used as the equally divided point.
[0056] Thereby, for example, for region 60(1), the processor 101 generates vertex data A1(xA1, yA1), vertex data B1(xB1, yB1), vertex data C1(xC1, yC1), and midpoint data D1(xD1, yD1), midpoint data E1(xE1, yE1), and midpoint data F1(xF1, yF1) as point data.
[0057] Similarly, for example, for region 60(13), the processor 101 generates vertex data A13(xA13, yA13), vertex data B13(xB13, yB13), vertex data C13(xC13, yC13), and midpoint data D13(xD13, yD13), midpoint data E13(xE13, yE13), and midpoint data F13(xF13, yF13) as point data.
[0058] The processor 101 generates, for example, point data indicating points included in the plurality of regions 60 based on region data indicating the plurality of regions 60 in a game played on a virtual space divided into the plurality of regions 60 as the generation unit 120 in this way.
[0059] In the above description, the case where the processor 101 generates both vertex data and equally divided point data as point data is shown as an example, but it is not limited thereto. The processor 101 may generate only one of vertex data and equally divided point data as point data.
[0060] Incidentally, since no region 60 is set in the entry prohibited range, no vertex data or equally divided point data is generated inside such an entry prohibited range. Return to the description of FIG. 5.
[0061] In step S250, the processor 101 acquires data of the starting point S and the destination point G. For example, the processor 101 may acquire data S(xS, yS) of the starting point S and data G(xG, yG) of the destination point G based on the operation of the player via the user interface 106. At this time, the processor 101 may set the position designated by the player as the destination point G.
[0062] Here, among the regions 60(1) to 60(17), it is assumed that the regions 60(1) to 60(10) are regions 60 acquired by the player, and the regions 60(11) to 60(17) are regions 60 not acquired by the player. And it is assumed that the player's base provided in the region 60(4) is set as the starting point S, and the base of the region 60(17) that the player newly desires to acquire is set as the destination point G.
[0063] In step S260, the processor 101 searches for a path for the character 50 to move on the virtual space using the generated point data. At this time, the processor 101 may adopt an existing search algorithm. Here, refer to FIG. 7.
[0064] FIG. 7 is a diagram showing an example of a route searched by the information processing apparatus 100 according to the present embodiment. For example, focusing on the area 60(4), since the area 60(4) is the area 60 where the starting point S is set, the processor 101 picks up the combinations of the starting point S and the points A4 to F4 generated in the area 60(4) as paths. That is, the processor 101 picks up the paths S-A4, S-B4, S-C4, S-D4, S-E4, and S-F4.
[0065] Next, for example, focusing on the area 60(9), since the area 60(9) is an area 60 that the player has acquired, the processor 101 picks up, as paths, the combinations among the combinations of the points A9 to F9 generated in the area 60(9) whose paths do not overlap. That is, the processor 101 picks up the paths A9-B9, A9-C9, B9-C9, A9-E9, B9-F9, C9-D9, D9-E9, D9-F9, and E9-F9. Similarly, focusing on the area 60(8), since the area 60(8) is an area 60 that the player has acquired, the processor 101 picks up, as paths, the combinations among the combinations of the points A8 to F8 generated in the area 60(8) whose paths do not overlap. That is, the processor 101 picks up the paths A8-B8, A8-C8, B8-C8, A8-E8, B8-F8, C8-D8, D8-E8, D8-F8, and E8-F8.
[0066] Next, for example, focusing on area 60(12), since area 60(12) is an area 60 that the player has not acquired, the processor 101 picks up, as paths, combinations of A12 to C12, which are the vertices among points A12 to F12 generated in area 60(12). That is, the processor 101 picks up paths A12 - B12, A12 - C12, and B12 - C12. Similarly, for example, focusing on area 60(16), since area 60(16) is an area 60 that the player has not acquired, the processor 101 picks up, as paths, combinations of A16 to C16, which are the vertices among points A16 to F16 generated in area 60(16). That is, the processor 101 picks up paths A16 - B16, A16 - C16, and B16 - C16.
[0067] Next, for example, focusing on area 60(17), since area 60(17) is an area 60 where the destination point G is set, the processor 101 picks up, as paths, combinations of the destination point G and points A17 to F17 generated in area 60(17). That is, the processor 101 picks up paths G - A17, G - B17, G - C17, G - D17, G - E17, and G - F17.
[0068] Then, the processor 101 follows the path thus picked up and searches for the path with the lowest cost among the paths that can reach the destination point G from the starting point S. At this time, the "cost" may include various settings such as the length of the path, the time required for passage, the toll set in the game, the strength of the enemies encountered, and the quality of the items that can be obtained. As a result, the processor 101 searches for a path such as the starting point S → point D4 = point E9 → point F9 = point E8 → point A8 = point C12 → point B12 = point C16 → point B16 = point C17 → destination point G as an example. Note that "=" indicates points with the same coordinates. That is, for example, "point D4 = point E9" indicates that point D4 in area 60(4) and point E9 in area 60(9) have the same coordinates. In this way, the processor 101 may search for a path via a line connecting any of the vertices or equally divided points in one of the plurality of areas 60. In particular, the processor 101 may search for a path such that the movement in areas 60(9), 60(8), 60(12), and 60(16) other than the area 60(4) containing the starting point S and the area 60(17) containing the destination point G among the plurality of areas 60 is only on the line. The processor 101 can search for a path to reach the destination point G from the starting point S via at least one of the vertices and equally divided points of the area 60 in this way, for example.
[0069] For example, regarding the paths in regions 60(16) and 60(17), as shown by the dotted lines in this figure, the path of point C16 → point D16 = point F17 → destination point G is shorter than the explored path. However, the processor 101 deliberately does not pick up the path C16 - D16, so that such a shortest path is not explored. This is because regions 60(16) and 60(17) are regions 60 that the player has not acquired. In this way, when the game progresses by the player acquiring each of the plurality of regions 60, in the regions 60 that the player has not acquired among the plurality of regions 60, the processor 101 explores the path so as to pass only through the vertices that do not include the equal division points, so that the movement of the character 50 in the unacquired region 60 can be made slower than the movement of the character 50 in the acquired region 60.
[0070] On the other hand, for example, in region 60(8), the path connecting the vertex of path A8 - E8 and the equal division point is picked up and explored as a path. Also, in region 60(9), the path connecting different equal division points of path E9 - F9 is picked up and explored as a path. This is because regions 60(8) and 60(9) are regions 60 that the player has acquired. In this way, in the regions 60 that the player has acquired among the plurality of regions 60, the processor 101 explores the path so as to pass through at least one of the vertex and the equal division point, so that the movement of the character 50 in the acquired region 60 can be made faster than the movement of the character 50 in the unacquired region 60. Return to the description of FIG. 5.
[0071] In step S270, the processor 101 moves the character 50 on the virtual space according to the path explored in step S260.
[0072] In step S280, the processor 101 determines whether the character 50 has arrived at the destination point G. If it is determined that the character has not arrived (No), the processor 101 returns the process to step S270. On the other hand, if it is determined that the character has arrived (Yes), the processor 101 ends this flow.
[0073] Conventionally, when moving the character 50 in the virtual space, dedicated points for path search were independently generated in the virtual space, and the generated points were used to search for a path. However, in the conventional technology, there was a problem that a large number of points had to be independently generated in the virtual space, requiring a lot of working time.
[0074] Therefore, the information processing apparatus 100 according to the present embodiment generates point data indicating points included in the plurality of regions 60 based on region data indicating the plurality of regions 60 in a game played on a virtual space divided into a plurality of regions, and searches for a path for the character 50 to move on the virtual space based on the point data. Thus, according to the information processing apparatus 100 according to the present embodiment, since the point data is generated by diverting the region data that was originally necessary for advancing the game, the data for path search can be generated with less working time compared to the case of independently generating dedicated points for path search.
[0075] At this time, the information processing apparatus 100 may extract vertex data indicating vertices in each of the plurality of regions 60 from the region data as the point data. Thus, according to the information processing apparatus 100, the point data for path search can be generated only by exporting the region data.
[0076] Further, the information processing apparatus 100 may generate equally divided point data indicating equally divided points of sides connecting adjacent vertices as the point data. Thus, according to the information processing apparatus 100, even when sufficient point data for path search cannot be ensured only by the vertex data, the point data for path search can be increased by simple calculations.
[0077] Further, the information processing apparatus 100 may search for a path so as to pass through at least one of the vertex and the equally divided points. Thereby, according to the information processing apparatus 100, the path along which the character 50 moves can be limited to some extent as compared with the case of freely moving. At this time, it is preferable that each of the plurality of regions 60 is a region obtained by dividing the range in which the character 50 can enter in the virtual space. In this case, according to the information processing apparatus 100, since a path along which the character 50 moves in a prohibited entry range where the region 60 is not set is not searched, the movement of the character 50 can be restricted to movement within the plurality of regions 60 which are accessible ranges. In this way, according to the information processing apparatus 100, path movement in accordance with the game specifications can be realized.
[0078] Further, the information processing apparatus 100 may search for a path so as to pass through at least one of the vertex and the equally divided points in the region 60 acquired by the player, and to pass through only the vertex in the region 60 not acquired by the player. Thereby, according to the information processing apparatus 100, the movement of the character 50 in the acquired region 60 can be made faster than the movement of the character 50 in the unacquired region 60, so that the progress of the game can be made more advantageous by acquiring the region 60.
[0079] FIG. 8 is a diagram showing an example of the functional configuration of the information processing apparatus 100 according to the first modification of the present embodiment. In the above description, an example in which the information processing apparatus 100 makes the movement of the character 50 in the acquired region 60 faster than the movement of the character 50 in the unacquired region 60 has been shown, but this may be visualized by display.
[0080] The information processing apparatus 100 according to the first modification further includes a display unit 140. The display unit 140 displays the region 60 acquired by the player such that at least one of between the vertex and the equally divided points and between different equally divided points is in a different state from others.
[0081] FIG. 9 is a diagram showing an example of the area 60 displayed by the information processing apparatus 100 according to the first modification of the present embodiment. The left side of this figure shows area 60(1) as an example of the area 60 that the player has acquired. The right side of this figure shows area 60(13) as an example of the area 60 that the player has not acquired.
[0082] As described above, the information processing apparatus 100 may search for a path so as to pass through at least one of the vertices and the equally divided points in the area 60 that the player has acquired, and to pass through only the vertices in the area 60 that the player has not acquired.
[0083] In this regard, for example, in the area 60(13) that the player has not acquired, only the paths A13 - B13, A13 - C13, and B13 - C13 are picked up, and A13 - E13, B13 - F13, C13 - D13, D13 - E13, D13 - F13, and E13 - F13 are not picked up. On the other hand, for example, in the area 60(1) that the player has acquired, in addition to the paths A1 - B1, A1 - C1, and B1 - C1, A1 - E1, B1 - F1, C1 - D1, D1 - E1, D1 - F1, and E1 - F1 are also picked up.
[0084] Therefore, in order to inform the player that the paths A1 - E1, B1 - F1, C1 - D1, D1 - E1, D1 - F1, and E1 - F1 are searchable in this way, the processor 101 may display a graphic representing a road between at least one of point A1 and point E1, point B1 and point F1, point C1 and point D1, point D1 and point E1, point D1 and point F1, and point E1 and point F1, etc., so as to display the area 60(1) in a different manner from others. The processor 101 may display the area 60 that the player has acquired so that at least one of between the vertices and the equally divided points and between different equally divided points is in a different manner from others, for example, in this way.
[0085] FIG. 10 is a diagram showing an example of the functional configuration of the information processing apparatus 100 according to the second modification of the present embodiment. In the above description, as an example, a case is shown in which the information processing apparatus 100 gives the player the advantage of acquiring the area 60 by making the movement of the character 50 in the acquired area 60 faster than the movement of the character 50 in the unacquired area 60. However, instead of or in addition to this, the information processing apparatus 100 may give the player the advantage of acquiring the area 60 by increasing the reward obtained in the acquired area 60.
[0086] The information processing apparatus 100 according to the second modification further includes a giving unit 150. When the character 50 passes at least one of between the vertex and the equally divided points and between different equally divided points, the giving unit 150 gives the player a reward advantageous for the progress of the game.
[0087] As described above, between the vertex and the equally divided points and between different equally divided points can be passed only in the area 60 that the player has acquired, for example, in the area 60(1), and cannot be passed in the area 60 that the player has not acquired, for example, in the area 60(13).
[0088] Therefore, for example, when the character 50 passes at least one of between point A1 and point E1, between point B1 and point F1, between point C1 and point D1, between point D1 and point E1, between point D1 and point F1, and between point E1 and point F1 in the area 60(1), the processor 101 may give the player a reward (such as an item with high rarity). For example, in this way, when the character 50 passes at least one of between the vertex and the equally divided points and between different equally divided points, the processor 101 may give the player a reward advantageous for the progress of the game.
[0089] In addition, the above-described modification examples can be appropriately combined as long as there is no contradiction in the description. Further, the above-described embodiments can be modified in various forms or applied to various uses. For example, in the above description, as an example, the case where the information processing apparatus 100 always searches for a route using the point data generated based on the area data is shown. However, depending on the conditions, it may be switched between the case of searching for a route using the point data and the case of searching for a route without using the point data.
[0090] For example, in the above description, the case where the starting point S is set in the area 60(4) and the destination point G is set in the area 60(17) is shown as an example. Thus, when a predetermined criterion such as the distance in the virtual space between the starting point S and the destination point G exceeding a threshold value is satisfied, the information processing apparatus 100 may search for a route using the point data generated based on the area data as described above.
[0091] On the other hand, for example, assume that the starting point S is set in the area 60(4), and the destination point G is set in the area 60(4) that is the same as the starting point S or in the area 60(9) adjacent to the area 60(4). Thus, when a predetermined criterion such as the distance between the starting point S and the destination point G in the virtual space not exceeding a threshold value is not satisfied, the information processing apparatus 100 may search for a route by another method without using the point data generated based on the area data. In this case, the information processing apparatus 100 may search for a route, for example, by connecting the starting point S and the destination point G with a straight line.
[0092] In the above description, it has been explained that the information processing apparatus 100 limits the route along which the character 50 moves by searching for a route that passes through at least one of the vertex and the equally divided points. The information processing apparatus 100 may add an element to make the game more interesting by utilizing the limitation of the route. In this case, when characters that are hostile to each other on the virtual space come into contact or approach each other, the processor 101 may cause a battle to occur. At this time, the processor 101 can determine that the characters have come into contact or approached each other when the distance between the characters on the virtual space becomes less than a predetermined threshold value.
[0093] For example, when the game is a game themed on historical territorial disputes, modes such as "guerrilla warfare" and "ambush" for arranging troops on the virtual space may be implemented. "Guerrilla warfare" is effective when it is desired to annihilate the enemies that have invaded the territory because it attacks the enemies that have entered the detection range of the troops in order. "Ambush" is effective when it is desired to stop the enemies because it attacks only the enemies within the detection range and not targeted by anyone. When such modes are implemented, the player can attack the enemies, for example, by arranging troops near at least one of the vertex and the equally divided points. At this time, according to the information processing apparatus 100, the probability of the friendly characters arranged and the enemy characters encountering each other can be increased, so a more strategic game can be provided.
[0094] Also, in the above embodiment, the processor refers to a processor in a broad sense and includes a general-purpose processor (for example, CPU: Central Processing Unit, etc.) and a dedicated processor (for example, GPU: Graphics Processing Unit, ASIC: Application Specific Integrated Circuit, FPGA: Field Programmable Gate Array, programmable logic device, etc.).
[0095] In addition, the operations of the processor in the above embodiments may be performed not only by a single processor but also by a plurality of physically separated processors working in cooperation. Also, the order of each operation of the processor is not limited to the order described in each of the above embodiments and may be changed as appropriate.
[0096] Also, although the information processing apparatus 100 in the present embodiment has been described as being configured by a single apparatus as an example, it may be configured by a plurality of apparatuses.
[0097] In addition, the processing performed by the information processing apparatus 100 according to the above embodiment may be processing performed by software, may be processing performed by hardware, or may be processing combining both. Also, the processing performed by each part of the information processing apparatus 100 may be stored in a storage medium as a program and distributed.
[0098] Also, the present disclosure is not limited to the above, and it goes without saying that various modifications can be made without departing from the gist thereof.
Description of Reference Numerals
[0099] 10 Game system 20 Communication means 30 Server device 40 Terminal device 50 Character 60 Region 100 Information processing apparatus 101 Processor 102 ROM 103 RAM 104 Storage 105 Communication interface 106 User interface 109 Bus 110 Acquisition unit 120 Generation unit 122 Extraction unit 124 Generation unit 130 Exploration Unit 140 Display Unit 150 Attachment Unit
Claims
1. The computer, based on area data indicating the plurality of areas in a game played on a virtual space divided into a plurality of areas, generates point data indicating points included in the plurality of areas, uses the point data to search for a path for a character to move on the virtual space, An information processing program.
2. The computer, extracts vertex data indicating vertices in each of the plurality of areas from the area data as the point data, The information processing program according to claim 1.
3. The computer, generates midpoint data indicating midpoints of sides connecting adjacent vertices as the point data, The information processing program according to claim 2.
4. The computer, searches for the path so as to pass through at least one of the vertices and the midpoints, The information processing program according to claim 3.
5. The computer, when the game progresses by the player acquiring each of the plurality of areas, in the areas acquired by the player among the plurality of areas, searches for a path so as to pass through at least one of the vertices and the midpoints, and in the areas not acquired by the player among the plurality of areas, searches for a path so as to pass through only the vertices, The information processing program according to claim 4.
6. The computer, displays the areas acquired by the player so that at least one of between the vertices and the midpoints and between different midpoints is in a different state from others, The information processing program according to claim 5.
7. The computer, when the character passes through at least one of between the vertices and the midpoints and between different midpoints, gives the player a reward advantageous to the progress of the game, The information processing program according to claim 5.
8. The computer, searches for the path so as to pass through a line connecting any of the vertices or the midpoints in one of the plurality of areas, The information processing program according to claim 4.
9. The computer, searches for the path so that movement in areas other than the area including the starting point and the area including the destination point among the plurality of areas is only on the line, The information processing program according to claim 8.
10. Each of the plurality of regions is a region obtained by dividing the range in which the character can enter on the virtual space. The information processing program according to any one of claims 1 to 9.
11. Cause the computer to perform a battle when opposing characters on the virtual space come into contact or approach each other. The information processing program according to any one of claims 1 to 9.
12. Cause the computer to search for the route without using the point data when the distance on the virtual space between the starting point and the destination point does not satisfy a predetermined criterion. The information processing program according to any one of claims 1 to 9.
13. The computer generates point data indicating points included in the plurality of regions based on region data indicating the plurality of regions in a game played on a virtual space divided into a plurality of regions, searches for a route for a character to move on the virtual space using the point data. Information processing method.
14. An information processing apparatus comprising a processor, wherein the processor generates point data indicating points included in the plurality of regions based on region data indicating the plurality of regions in a game played on a virtual space divided into a plurality of regions, searches for a route for a character to move on the virtual space using the point data. Information processing apparatus.
Citation Information
Patent Citations
Program, game system, control method, and recording medium
JP2016047124A