Program and system

The program and system optimize trading locations based on user status and object type, prioritizing spots with more users and favorable conditions to improve trading efficiency and user experience.

JP2025187035APending Publication Date: 2025-12-24COLOPL
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
JP2025131495
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2025-08-06
Publication Date
2025-12-24

AI Technical Summary

Technical Problem

Existing systems fail to efficiently determine and prioritize locations for trading virtual objects based on user status and object type, leading to suboptimal trading experiences.

Method used

A program and system that utilize a position determination unit to identify trading spots based on user playing status and object type, with priority settings and guidance notifications to enhance trading opportunities.

Benefits of technology

Enhances trading efficiency by prioritizing locations with more users and favorable conditions, improving user experience and transaction likelihood.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025187035000001_ABST
    Figure 2025187035000001_ABST
Patent Text Reader

Abstract

SOLUTION: A program is provided that causes a computer to function as a location determination unit that determines the location of a spot where an object can be traded with other users, according to at least one of the user's play status or the type of object the user wishes to trade. In the above program, the location determination unit may move the spot where an object can be traded at predetermined time intervals. Any of the above programs may also cause the computer to function as a priority setting unit that prioritizes tradable spots associated with more other users over tradable spots associated with fewer other users.SELECTED DRAWING: Figure 6
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

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

[0002] Patent document 1 states, "The positional relationship notification control unit 220 controls the notification of the positional relationship between the user's position and the convertible object placement position and / or conversion location to the player user, based on placement position data that defines the placement position P1 (see Figure 3) of the conversion object that the player user can acquire, and conversion location data that defines the conversion location at which the convertible object owned by the user can be converted into a conversion destination object." (paragraph 0128). [Prior art document] [Patent documents] [Patent Document 1] Patent No. 7038482 Summary of the Invention

[0003] In a first aspect of the present invention, a program is provided that causes a computer to function as a position determination unit that determines the location of a spot where an object can be traded with other users, depending on at least one of the user's playing status or the type of object the user wishes to trade.

[0004] In the above program, the position determination unit may move the spot where the object can be traded at predetermined time intervals.

[0005] Any of the above programs may cause the computer to function as a priority setting unit that sets a higher priority for tradable spots associated with more other users than for tradable spots associated with fewer other users.

[0006] Any of the above programs may cause the computer to function as a notification unit that notifies the user of guidance information to a tradable spot that has a higher priority, rather than guidance information to a tradable spot that has a lower priority.

[0007] In a second aspect of the present invention, a system is provided that includes a position determination unit that determines the location of a spot where an object can be traded with other users, depending on the user's playing status or the type of object the user wishes to trade.

[0008] The above summary of the invention does not list all of the features of the present invention, and subcombinations of these features may also be inventions. [Brief explanation of the drawings]

[0009] [Figure 1] 1 shows the configuration of a system 10 according to this embodiment. [Figure 2] 1 shows the configuration of a server device 20 according to this embodiment. [Figure 3] An example of a data structure related to each user stored in the database 200 is shown below. [Figure 4] The configuration of a terminal device 30 according to this embodiment is shown together with an input device 50 and a display device 60. [Figure 5] 10 shows a processing flow in the server device 20 according to the present embodiment. [Figure 6] The configuration of the transaction processing unit 230 according to this embodiment is shown together with the instruction input unit 210, the game processing unit 220, the display processing unit 240, and the blockchain 670. [Figure 7] 10 shows an example of a transaction processing flow in the server device 20 according to this embodiment. [Figure 8] 10 shows an example of a block chain processing flow in the server device 20 according to this embodiment. [Figure 9] An example of the data structure for each transaction stored in the database 200 is shown below. [Figure 10] 1 shows a first example of a display on the terminal device 30 according to the present embodiment. [Figure 11] 10 shows a second example of the display of the terminal device 30 according to the present embodiment. [Figure 12] 10 shows a third example of a display on the terminal device 30 according to the present embodiment. [Figure 13] 10 shows a fourth example of a display on the terminal device 30 according to the present embodiment. [Figure 14] 10 shows a fifth example of a display on the terminal device 30 according to the present embodiment. [Figure 15] An example of a data structure for each item stored in the blockchain 670 is shown below. [Figure 16] 22 illustrates an example computer 2200 in which aspects of the present invention may be embodied, in whole or in part. DETAILED DESCRIPTION OF THE INVENTION

[0010] The present invention will be described below through embodiments of the invention, but the following embodiments do not limit the scope of the invention according to the claims. Furthermore, not all of the combinations of features described in the embodiments are necessarily essential to the solution of the invention.

[0011] 1 shows a system 10 according to this embodiment. The system 10 includes a server device 20, a plurality of terminal devices 30, and a network 40. The system 10 has a function of holding an event associated with a real-world location and allowing one or more users to participate using one or more terminal devices 30, respectively.

[0012] The server device 20 is connected to a plurality of terminal devices 30 via a network 40. The server device 20 receives access from one or more terminal devices 30 and provides the terminal devices 30 with events associated with real locations. The server device 20 may have a function of providing in-game events, live streaming, merchandise sales, or other events as events associated with real locations. Such events may be content associated with real locations that can be used by playing, operating, interacting, or the like via the terminal devices 30. In the present embodiment, the server device 20 can, for example, provide a game environment to the terminal devices 30 and also provide in-game events associated with real locations.

[0013] The server device 20 may be a computer such as a personal computer (PC), a workstation, a server computer, a general-purpose computer, a tablet computer, or a smartphone, or may be a computer system in which multiple computers are connected. Such a computer system is also a computer in the broad sense. The server device 20 may also be implemented as one or more virtual computer environments executable within a computer. Alternatively, the server device 20 may be a dedicated computer designed for the system 10, or may be dedicated hardware implemented using dedicated circuitry.

[0014] The terminal device 30 is connected to the server device 20 via a network 40. The terminal device 30 may be a personal computer, a notebook computer, a mobile phone, a smartphone, a tablet computer, a game console, or any other terminal device capable of inputting and outputting data.

[0015] The network 40 connects the server device 20 and a plurality of terminal devices 30. The network 40 may be configured to include, for example, various wired or wireless networks such as the Internet, a wide area network (WAN), a local area network, or a mobile phone network, or a combination thereof.

[0016] 2 shows the server device 20 according to this embodiment. The server device 20 includes a database 200, an instruction input unit 210, a game processing unit 220, a transaction processing unit 230, and a display processing unit 240.

[0017] The database 200 stores user information about users and content information about events. In this embodiment, the user information is data recording the game progress and play history of each user who is a player of a game as an example of the content to be provided. In this embodiment, the content information is a programmed game scenario, images, sounds, or other data related to the game as an example of the content to be provided. The database 200 may be realized by at least a portion of the storage area of ​​an external storage device such as a hard disk drive connected to the server device 20, or may be realized by a storage device external to the server device 20 provided, for example, by a cloud storage service or the like.

[0018] The instruction input unit 210 is connected to a plurality of terminal devices 30 via the network 40. The instruction input unit 210 receives various instructions from the terminal devices 30, including various operations performed by the user while playing the game and various operations related to events performed by the user. The instruction input unit 210 supplies the received game-related instructions to the game processing unit 220. The instruction input unit 210 may also function as a location information input unit that inputs location information indicating the location of the terminal device 30 from the terminal device 30.

[0019] The game processing unit 220 is connected to the database 200, the instruction input unit 210, and the display processing unit 240. In response to game-related instructions received from the instruction input unit 210, the game processing unit 220 performs processing for progressing the game based on user information and content information stored in the database 200. In the example of this embodiment, the server device 20 provides a role-playing game as the content to be provided. In response to user instructions within the game space, the game processing unit 220 performs various game processes, such as organizing a group (also referred to as a "party") including one or more characters (virtual people or creatures such as animals placed in the game space), equipping each character with items such as weapons or armor, purchasing or selling items, moving the party, having the party fight enemies encountered, and developing characters based on combat experience. The server device 20 may provide any type of game other than a role-playing game.

[0020] In this embodiment, the game processing unit 220 may provide a location-based game that uses location information of the terminal device 30. "Location information" may include at least one of real-world location information and virtual-space location information. The real-world location information may include at least one of real-world coordinates (latitude, longitude, altitude, etc.), number of steps from a certain point, travel distance, travel time, travel speed, mode of transportation (walking, bicycle, car, train, etc.) or direction, atmospheric pressure, weather, region, topography, place name (city name, country name, etc.), building name, or installed object name. "Location information" may be obtained using at least one of a GPS (Global Positioning System) receiver, an acceleration sensor, an angular velocity sensor, a step sensor, a collision sensor, an infrared sensor, a beacon, radio waves, a radio wave base station, or an imaging device.

[0021] The location information of the virtual space may include at least one of the following information: coordinates (x, y, and z coordinates) in the virtual space defined in the system 10, the type of virtual space, the name of a building in the virtual space, or the name of an object in the virtual space. The location information of the virtual space may be associated with real-world location information. Therefore, the coordinates in the virtual space may be determined based on real-world coordinates. The location information of the virtual space may be information indicating a location in a game space, a live space, or a metaverse provided by the system 10.

[0022] The transaction processing unit 230 is connected to the database 200, the instruction input unit 210, the game processing unit 220, and the display processing unit 240. The transaction processing unit 230 performs processing for progressing a transaction based on the user information and content information stored in the database 200 in response to instructions regarding the transaction received from the instruction input unit 210.

[0023] The display processing unit 240 is connected to the terminal device 30 via the network 40. The display processing unit 240 performs display processing for displaying various display screens relating to games and events on the terminal device 30 as the display target in response to instructions from the game processing unit 220 and the transaction processing unit 230.

[0024] 3 shows an example of the data structure for each user stored in database 200. Database 200 stores game state data for each of multiple users. The game state data includes information about each user, such as "user ID," "in-game currency," "in-game rank," "location information," "possessed character information," "possessed item information," and "friend ID."

[0025] "User ID" is information for identifying the corresponding user and may be a number uniquely determined within the system 10. "In-game currency" indicates the remaining amount of in-game currency possessed by the corresponding user. "In-game currency" may be stored separately into the remaining amount of paid in-game currency possessed by the corresponding user and the remaining amount of free in-game currency. "In-game rank" indicates the rank of the corresponding user in the game.

[0026] The "location information" indicates the location information of the corresponding user. The location information may be information on the location of the terminal device 30 used by the corresponding user or information on a location similar to the location. The location information may also be information on the location of a device (such as a wearable device) used by the corresponding user other than the terminal device 30 or information on a location similar to the location. The location information of the corresponding user may be estimated from information from an external device linked to the system 10 (such as footage captured by a surveillance camera installed in the real space, measurement information from various sensors installed in the real space, etc.). The "location information" may be only the current location information of the corresponding user, or may also include a location history including the corresponding user's location information at each past point in time. The instruction input unit 210 of the server device 20 may acquire the location information from the terminal device 30 via the network 40. The server device 20 may acquire the coordinates (latitude and longitude) of the location of the terminal device 30 as the location information. Alternatively, the server device 20 may acquire, from the terminal device 30, for example, a place name, a location ID, or other information that can identify the location of the terminal device 30 with a certain degree of accuracy, as location information.

[0027] "Owned character information" indicates information about one or more characters possessed by the corresponding user. Character information may include the corresponding character's type, attributes, rarity (difficulty of obtaining in the game), HP (hit points), MP (magic points), etc. "Owned item information" indicates information about one or more items possessed by the corresponding user. The items may include the type and quantity of the corresponding item. "Friend ID" indicates the user ID of another user linked to the corresponding user.

[0028] The database 200 may store history information including a part or all of the game play history for each of a plurality of users. The history information may include the history of each user's participation in or application for an event.

[0029] FIG. 4 shows the configuration of the terminal device 30 according to this embodiment, together with the input device 50 and the display device 60. The input device 50 may be a keyboard, a mouse, or a touch sensor of a touch panel, or may be an imaging device such as a camera or a barcode reader, and inputs user instructions and the like for the server device 20 of the system 10 and supplies them to the terminal device 30. The display device 60 may be an image display unit such as a display or a touch panel, and displays a display screen output by the server device 20 of the system 10. The input device 50 and the display device 60 may be integrated with the terminal device 30. The terminal device 30 includes a terminal input processing unit 300, a terminal status acquisition unit 305, a terminal transmission unit 310, a terminal reception unit 320, and a terminal display processing unit 330.

[0030] The terminal input processing unit 300 is connected to the input device 50 and the terminal transmission unit 310. The terminal input processing unit 300 receives user instructions from the input device 50 and supplies the instructions to the terminal transmission unit 310.

[0031] The terminal status acquisition unit 305 is connected to the terminal transmission unit 310. The terminal status acquisition unit 305 receives location information of the terminal device 30 from a location sensor such as a GPS receiver provided in the terminal device 30, and supplies the location information to the terminal transmission unit 310.

[0032] The terminal transmitting unit 310 is connected to the network 40. The terminal transmitting unit 310 supplies the user's instructions received from the terminal input processing unit 300 to the server device 20 via the network 40. The terminal transmitting unit 310 supplies the location information of the terminal device 30 received from the terminal state acquiring unit 305 to the server device 20 via the network 40.

[0033] The terminal receiving unit 320 is connected to the network 40 and the terminal display processing unit 330. The terminal receiving unit 320 receives, via the network 40, various display screens that the server device 20 outputs to the terminal device 30.

[0034] The terminal display processing unit 330 is connected to the display device 60. The terminal display processing unit 330 performs processing for displaying the display screen received from the terminal receiving unit 320 on the display device 60.

[0035] In this embodiment, the terminal device 30 is configured to transmit user instructions input to the input device 50 to the server device 20, and to supply the display screen output by the server device 20 to the display device 60 for output, thereby reducing the processing load on the terminal device 30. Alternatively, the terminal device 30 may include a component corresponding to at least a portion of at least one of the instruction input unit 210, the game processing unit 220, the transaction processing unit 230, and the display processing unit 240 shown in relation to FIG. 2, and at least a portion of the processing may be executed locally within the terminal device 30.

[0036] 5 shows a processing flow in the server device 20 according to this embodiment. In response to receiving an instruction to start a game from a certain terminal device 30, the server device 20 starts the processing flow shown in this figure to provide a game to the user of that terminal device 30.

[0037] In S502 (step 502), the game processing unit 220 and the transaction processing unit 230 refer to the game state stored in the database 200 for the target user, and instruct the display processing unit 240 to generate a display screen corresponding to the game state. The display processing unit 240 performs processing to generate a game screen and display it on the terminal device 30 of the target user in accordance with the instructions from the game processing unit 220 and the transaction processing unit 230. For example, if the target user's party is moving within the game space, the display processing unit 240 causes the terminal device 30 to display a screen including an image of the party's surroundings; if the target user is selecting an item to be equipped by a character in the party, the display processing unit 240 causes the terminal device 30 to display a screen prompting the target user to select an item; and if the target user's party is in combat, the display processing unit 240 causes the terminal device 30 to display a screen prompting the target user to input a combat action for each of one or more characters.

[0038] In S504, the user of the terminal device 30, viewing the display screen displayed on the display device 60, inputs an instruction corresponding to the display screen via the input device 50 and transmits the instruction to the server device 20. The terminal device 30 transmits the location information acquired by the terminal state acquisition unit 305 to the server device 20. The instruction input unit 210 supplies the instruction from the terminal device 30 to the game processing unit 220 or the transaction processing unit 230 depending on the content of the instruction. The instruction input unit 210 supplies the location information of the terminal device 30 to the game processing unit 220 or the transaction processing unit 230.

[0039] In S506, the game processing unit 220 or the transaction processing unit 230 performs processing in accordance with the instruction input from the instruction input unit 210 in S504. For example, the game processing unit 220 performs processing such as moving the target user's party within the game space, determining items to be equipped by characters in the party, and having the characters attack a specified enemy using a specified means. The game processing unit 220 may perform processing such as moving the target user's party within the game space in response to a change in the target user's location information input from the instruction input unit 210. For example, the game processing unit 220 may perform processing such as moving the target user's party to a position within the game space corresponding to the target user's location information in response to a change in the target user's location information. Furthermore, the transaction processing unit 230 performs processing related to a transaction when the target user conducts a transaction within the provided content. The transaction processing unit 230 may perform processing related to a transaction based on the target user's location information input from the instruction input unit 210. For example, the transaction processing unit 230 performs processing related to a transaction when the target user's location information input from the instruction input unit 210 meets the requirements for executing a transaction. If the location information of the target user input from the instruction input unit 210 does not satisfy the requirements for executing the transaction, the transaction processing unit 230 does not need to perform processing related to the transaction.

[0040] In S508, the game processing unit 220 or the transaction processing unit 230 changes the game state stored in the database 200 in accordance with the processing in S506. For example, the game processing unit 220 updates the position in the game space of each character belonging to the party in the possessed character information shown in FIG. 3 as the party moves within the game space. When the game processing unit 220 equips a character with an item, the game processing unit 220 adds identification information of the equipped item to a data structure indicating a list of items equipped by the character, which is included in the possessed character information. Furthermore, when a character attacks a specified enemy, the game processing unit 220 performs processing such as decrementing an indicator value indicating the health of the enemy, such as HP, associated with the specified enemy. Furthermore, when the enemy attacks a character, the game processing unit 220 performs processing such as decrementing an indicator value indicating the health of the character, such as HP, associated with the character in the possessed character information. The game processing unit 220 may update the game state using various other methods in accordance with the target user's instructions and the progress of the game. Furthermore, the transaction processing unit 230 changes the game state stored in the database 200 in accordance with the result of the transaction, thereby reflecting the result of the transaction in the game state.

[0041] In S502 after returning from S508, the display processing unit 240 performs processing to display a screen after the change in the game state on the display device 60 of the terminal device 30.

[0042] FIG. 6 shows the configuration of the transaction processing unit 230 according to this embodiment, together with the instruction input unit 210, the game processing unit 220, the display processing unit 240, and the block chain 670.

[0043] Here, a "trade" may refer to a user exchanging an object in a virtual space with another user or an NPC placed in the virtual space by an administrator, operating organization, or the like that provides the system 10. In this embodiment, the "trade" may be performed virtually or simulated in the game space. Therefore, as a result of the trade, the trade processing unit 230 may perform data processing to exchange an object in the virtual space for data associated with the account of the user who conducted the trade (such as the possessed item information in FIG. 3). As an example, the trade processing unit 230 may perform data processing to collect one or more objects in the virtual space from data associated with the user ID of the user who conducted the trade and to grant one or more objects in the virtual space to the other user. Here, in the case of a trade between one user and another user, the trade processing unit 230 may add the object collected from the data associated with the user ID of the one user to the data associated with the user ID of the other user, and add the object collected from the data associated with the user ID of the other user to the data associated with the one user's user ID.

[0044] In this embodiment, "objects in a virtual space" refer to electromagnetically recorded data associated with a user's account. System 10 enables a user to use or sell "objects in a virtual space" associated with the user in the virtual space in response to a user's instruction. For example, "objects in a virtual space" may be in-game characters, in-game equipment, in-game consumable items, or in-game currency. "Trading" is not limited to trading between objects of the same category, such as between in-game characters or between in-game equipment, but may also include trading between objects of different categories, such as between in-game characters and in-game consumable items, or between in-game characters and in-game currency.

[0045] In this embodiment, when a user possesses an object in a virtual space that can be traded with other users, the system 10 notifies the user of guidance information for a location where the object in the virtual space can be traded with other users, thereby enabling the system 10 to increase the interest of the content it provides.

[0046] The blockchain 670 uses distributed ledger technology to distribute and manage historical data such as transactions among multiple entities (systems, storage, etc.) in an unalterable manner. Each of the multiple entities managing the blockchain 670 may be an external system, storage, etc. different from the server device 20, and at least one of the multiple entities may be the server device 20. The blockchain 670 according to this embodiment records transaction data of objects in the virtual space of the system 10. The blockchain 670 may manage objects in the virtual space as digital assets that can be traded or bought and sold in the real world as NFTs (non-fungible tokens). In this way, the blockchain 670 enables even those other than users of the system 10 to own or buy and sell individual objects in the virtual space provided by the system 10 as unique objects.

[0047] The transaction processing unit 230 includes a database connection unit 600, an acquisition unit 610, a condition setting unit 620, a location movement unit 630, a priority setting unit 640, a notification unit 650, a transaction permission unit 660, and a blockchain processing unit 680. The database connection unit 600 is connected to the database 200. The database connection unit 600 processes access to the database 200 from each unit in the location movement unit 630.

[0048] The acquisition unit 610 is connected to the instruction input unit 210 and acquires various inputs related to the transaction from the instruction input unit 210. As an example, the acquisition unit 610 may acquire various instructions related to the transaction, location information of each user, and identification information from the instruction input unit 210. In the example of the present drawing, the acquisition unit 610 includes an instruction acquisition unit 612, a location information acquisition unit 614, and an identification information acquisition unit 616. Alternatively, the acquisition unit 610 may include only at least one of the instruction acquisition unit 612, the location information acquisition unit 614, and the identification information acquisition unit 616.

[0049] The instruction acquisition unit 612 acquires various instructions related to the transaction from each user's terminal device 30 via the instruction input unit 210. As an example, the instruction acquisition unit 612 acquires at least one of an instruction to set transaction conditions or an instruction to execute the transaction. The location information acquisition unit 614 acquires location information of each user from each user's terminal device 30 via the instruction input unit 210.

[0050] The identification information acquisition unit 616 acquires code information read by each user's terminal device 30 via the instruction input unit 210. The identification information acquisition unit 616 may acquire code information placed at a real position. As an example, the identification information acquisition unit 616 acquires information contained in a QR code (registered trademark), barcode, watermark image, etc. read by each user's terminal device 30. The identification information acquisition unit 616 may acquire a transaction ID contained in the QR code (registered trademark), etc., the ID of another user who will be the trading partner, identification information of the NPC who will be the trading partner, etc.

[0051] The condition setting unit 620 is connected to the instruction acquisition unit 612. The condition setting unit 620 sets trading conditions for tradable objects in accordance with the user's instructions acquired by the instruction acquisition unit 612.

[0052] The location moving unit 630 is connected to the location information acquiring unit 614. The location moving unit 630 moves the location where transactions are possible according to the location information of each user acquired by the location information acquiring unit 614. As an alternative to the example shown in the figure, the location moving unit 630 may be connected to the database connecting unit 600. In this case, the location moving unit 630 may acquire the location information of each user stored in the database 200 via the database connecting unit 600.

[0053] The priority setting unit 640 is connected to the database connection unit 600. The priority setting unit 640 acquires each trading condition stored in the database 200 via the database connection unit 600. The priority setting unit 640 sets a priority for each acquired trading condition.

[0054] The guidance notification unit 650 is connected to the condition setting unit 620, the position movement unit 630, the priority setting unit 640, and the display processing unit 240. The guidance notification unit 650 instructs the display processing unit 240 to perform processing to display, on the terminal device 30 of the user, tradable positions at which the user can trade tradable objects with other users.

[0055] The transaction permission unit 660 is connected to the database connection unit 600, the acquisition unit 610, and the game processing unit 220. The transaction permission unit 660 instructs the game processing unit 220 to execute a transaction based on each input acquired from the acquisition unit 610.

[0056] The blockchain processing unit 680 is connected to the database connection unit 600 and the blockchain 670. The blockchain 670 records information about transactions read from the database 200 via the database connection unit 600 in the blockchain 670.

[0057] 7 shows an example of a transaction processing flow in the server device 20 according to this embodiment. In response to the transaction processing unit 230 receiving an instruction to start transaction processing from a terminal device 30, the server device 20 starts the processing flow shown in this figure to provide a transaction to the user of the terminal device 30.

[0058] In S710, the instruction acquisition unit 612 acquires an instruction regarding the transaction content from the instruction input unit 210. The instruction acquisition unit 612 may acquire at least one of information on an object that the target user wishes to give to another user in the transaction and information on an object that the target user wishes to receive from another user.

[0059] In S715, the transaction processing unit 230 determines whether the target user possesses a tradable object. The transaction processing unit 230 may refer to the in-game state of the target user stored in the database 200, and determine that the target user possesses a tradable object if a tradable object associated with the target user exists. The transaction processing unit 230 may refer to the in-game state of the target user stored in the database 200, and determine that the target user does not possess a tradable object if a tradable object associated with the target user does not exist.

[0060] If the target user does not possess a tradable object (No in S715), the server device 20 ends the processing flow of this figure. If the target user possesses a tradable object (Yes in S715), the server device 20 proceeds to S720.

[0061] In S720, the condition setting unit 620 sets the transaction conditions for the tradable object in accordance with an instruction from the user. The condition setting unit 620 may set the transaction conditions for the tradable object in accordance with an instruction for setting the transaction conditions acquired by the instruction acquisition unit 612. The condition setting unit 620 may set, as the transaction conditions, an object that the user wishes to transfer to another user in a transaction. The condition setting unit 620 may set, as the transaction conditions, an object that the user wishes to receive from another user in a transaction.

[0062] In S725, the priority setting unit 640 may assign a higher priority to other users or NPCs with whom the user can trade tradable objects under more favorable trading conditions as trading partners, among the multiple other users and NPCs. The priority setting unit 640 may read information about each transaction from the database 200 via the database connection unit 600 and assign a higher priority to other users or NPCs with whom the user can trade tradable objects under more favorable trading conditions than other users and NPCs with whom the user can trade. For example, the priority setting unit 640 may assign a higher priority to other users or NPCs located closer to the user as trading partners. The priority setting unit 640 may assign a higher priority to other users or NPCs with whom the user has set trading conditions that will allow the user to obtain more objects as a result of the transaction. The priority setting unit 640 may assign a higher priority to other users or NPCs with whom the user has set trading conditions that will allow the user to obtain objects of higher rarity as a trading partner. The priority setting unit 640 may set the priority of the trading partner in accordance with the priority conditions set by the user.

[0063] In S730, the location moving unit 630 determines a location where a transaction is possible. The location moving unit 630 may acquire location information of each user from the location information acquisition unit 614. Alternatively, the location moving unit 630 may acquire location information of each user stored in the database 200 via the database connection unit 600. The location moving unit 630 may determine a location where a transaction is possible based on the acquired location information of each user. For example, the location moving unit 630 may acquire the coordinates of each user's real-world location and set the location as a location where a transaction is possible based on the coordinates of the real-world location. The location moving unit 630 may set a location in the virtual space that is associated with the coordinates of the real-world location of a user who is the user's trading partner as a location where a transaction is possible. The location moving unit 630 may set a location in the virtual space that has a certain relationship to the location in the virtual space that is associated with the coordinates of the real-world location of the user's trading partner (e.g., a location 300 m away in the real space) as a location where a transaction is possible. A server device 20 having such functions can prevent users from meeting face-to-face during a transaction and protect the personal information of each user.

[0064] Alternatively, the location moving unit 630 may set a location (trading spot) independent of the location information of each user as a tradable location. The location moving unit 630 may set a trading spot associated with one or more other users with whom the user can trade, or one or more objects of one or more other users, as a tradable location. The location moving unit 630 may determine whether the tradable location is a tradable location associated with the location information of any user or a trading spot independent of the location information of each user, depending on the type of object to be traded. The location moving unit 630 may determine whether the tradable location is a tradable location associated with the location information of other users or a trading spot, depending on the proficiency of the user or other users with whom the user can trade. The location moving unit 630 may move the trading spot according to predetermined conditions. For example, the location moving unit 630 may randomly move the trading spot at predetermined time intervals, or gradually move the trading spot in a predetermined direction as time passes. The priority setting unit 640 may set a trading spot associated with a larger number of other users as a higher priority than a trading spot associated with fewer other users.

[0065] In S735, the guidance notification unit 650 instructs the display processing unit 240 to perform processing to display, on the user's terminal device 30, a tradeable location where the user can trade with another user. Therefore, when the user possesses an object tradeable with a first other user in the virtual space, the guidance notification unit 650 notifies the user of guidance information about a tradeable location in the virtual space associated with a real location where the tradeable object can be traded with the first other user. The guidance notification unit 650 may notify the user of the guidance information about the tradeable location determined by the location movement unit 630 in S730. The guidance notification unit 650 may change the display mode of the guidance information depending on the distance between the user's current location and the tradeable location. When the distance between the user's current location and the tradeable location is greater, the guidance notification unit 650 may reduce the amount of information in the guidance information to be displayed, and when the distance between the user's current location and the tradeable location is shorter, the guidance notification unit 650 may increase the amount of information in the guidance information to be displayed.

[0066] The guidance notification unit 650 may notify the user of guidance information to a location where a tradeable object can be traded under conditions that satisfy the trading conditions set by the condition setting unit 620 in S720. A server device 20 having such functionality allows the user to set conditions for satisfying the trading conditions. The guidance notification unit 650 may notify the user of guidance information to a location where a trade is possible under conditions that completely satisfy the trading conditions, or may notify the user of guidance information to a location where a trade is possible under conditions that partially satisfy the trading conditions. When the guidance notification unit 650 notifies the user of guidance information to a location where a trade is possible under conditions that partially satisfy the trading conditions, the guidance notification unit 650 may notify the user of which of the trading conditions are satisfied at the trading location and which are not satisfied.

[0067] When there are no other users who can trade a tradable object under conditions that satisfy the trading conditions, the notification unit 650 may determine a location in the virtual space to notify the user of the guidance information based on at least one of the transaction history, the movement history of each user in the virtual space, the characteristics of each location in the virtual space, or the characteristics of real-world locations corresponding to each location in the virtual space. With the server device 20 having such functionality, even when there are no other users who can trade a tradable object under conditions that satisfy the trading conditions, the server device 20 can improve the likelihood of a trade being made under conditions that satisfy the trading conditions by guiding the user to a location where users tend to gather. The notification unit 650 may determine, based on the transaction history, a location where a large number of transactions have been made within a certain period of time as a location in the virtual space to notify the user of the guidance information. The notification unit 650 may determine, based on the movement history of each user in the virtual space, a location where a large number of users have been present within a certain period of time as a location in the virtual space to notify the user of the guidance information. Based on the characteristics of each location in the virtual space, the guidance notification unit 650 may determine a location in the virtual space where users are likely to gather in an application provided by the server device 20 (such as a location where users can receive a reward by visiting) as a location in the virtual space for which guidance information is to be notified to the user. Based on the characteristics of real locations corresponding to each location in the virtual space, the guidance notification unit 650 may determine a location in the virtual space where users are likely to visit (such as a high population density location, a station, or a tourist attraction, where no costs (such as entrance fees or transportation costs) are required to visit) as a location in the virtual space for which guidance information is to be notified to the user. Furthermore, if a specific event (mission) is set and a preferred location (real location or location in the virtual space) is determined, the guidance notification unit 650 may set a location that is advantageous for completing such an event as a location for meeting other users. Note that if there are conditions for participation in the event, the guidance notification unit 650 may determine the priority of the locations to be guided to after confirming whether the user meets the conditions for participation in the event.The information notification unit 650 may confirm participation in the event based on code information such as a participation certificate or a QR code (registered trademark). For example, when predetermined code information is read by the user's terminal device 30, the information notification unit 650 may determine that the user meets the conditions for participation in the event.

[0068] The guidance notification unit 650 may notify the user of guidance information for trading locations where trading is possible with other users who have been set to a higher priority in S725, giving priority to guidance information for trading locations where trading is possible with other users who have been set to a lower priority. The server device 20 having such functionality makes it easier for users to trade under more favorable trading conditions. The guidance notification unit 650 may notify the user of guidance information for trading spots where a higher priority is set over guidance information for trading spots where a lower priority is set. The guidance notification unit 650 may notify the user only of guidance information for trading locations where trading is possible with other users who have been set to the highest priority. The guidance notification unit 650 may notify the user of guidance information for locations where trading is possible with other users who have been set to a higher priority in a different manner than guidance information for locations where trading is possible with other users who have been set to a lower priority. For example, the guidance notification unit 650 may notify the user of a larger amount of guidance information for locations where trading is possible with other users who have been set to a higher priority than guidance information for locations where trading is possible with other users who have been set to a lower priority. The guidance notification unit 650 may only display on the map locations where transactions can be made with other users who have been set to a lower priority, and may display on the map locations where transactions can be made with other users who have been set to a higher priority, and may also notify more detailed guidance information (such as the route, direction, and required time from the user's current location to the transaction location). The guidance notification unit 650 may display guidance information to locations where transactions can be made with other users who have been set to a higher priority in a more noticeable manner (such as by displaying a larger arrow, larger characters, a darker color, or a flashing manner) than guidance information to locations where transactions can be made with other users who have been set to a lower priority.

[0069] The guidance notification unit 650 may notify the user of guidance information when information about the user satisfies a predetermined condition. The guidance notification unit 650 may not notify the user of guidance information when information about the user does not satisfy a predetermined condition. The guidance notification unit 650 may notify the user of guidance information in response to information about the user's movement satisfying a predetermined condition. For example, the guidance notification unit 650 may notify the user of guidance information in response to the distance or number of steps traveled by the user within a certain period of time exceeding a predetermined threshold. The guidance notification unit 650 may notify the user of guidance information in response to the user performing a predetermined procedure.

[0070] The guidance notification unit 650 may notify the user of location information of places where other users may visit after a certain time. The guidance notification unit 650 may acquire location information of places where other users may visit after a certain time from the terminal device 30 of the other user via the instruction input unit 210 and the acquisition unit 610. The terminal device 30 of the other user may identify a destination input in an application provided by the system 10 or an application (such as a map application) linked to an application provided by the system 10 as a place where other users may visit after a certain time. The guidance notification unit 650 may predict places where other users may visit after a certain time based on the history of location information of other users acquired from the database 200. For example, the guidance notification unit 650 may identify places that other users frequently visit at a specific time or time period as places where other users may visit after a certain time. The notification unit 650 may notify the user of location information of a location where the other user may visit after a certain time if the user and the other user have a predetermined relationship, such as a friend relationship. By notifying the user only if the user and the other user have a predetermined relationship, the personal information of the other user is protected, allowing the other user to enjoy trading with peace of mind. The notification unit 650 may notify the user of a location where the other user may visit after a certain time by displaying the location on a map of the virtual space, or may notify the user of a location where the other user may visit after a certain time by using text information.

[0071] In S740, the user and other users move, and the position information acquisition unit 614 acquires the position information of each user after the movement.

[0072] In S745, the transaction permission unit 660 determines whether the user satisfies the predetermined conditions for transaction execution. If the transaction permission unit 660 determines that the user does not satisfy the predetermined conditions for transaction execution (No in S745), the server device 20 returns the process to S725. As an example, if a location in the virtual space associated with the user's real location is not within a predetermined range from a transaction-enabled location, the transaction permission unit 660 may determine that the user does not satisfy the conditions for transaction execution. If a location in the virtual space associated with the user's real location is within a predetermined range from a transaction-enabled location, but the code information placed at the real location associated with the transaction-enabled location has not been read by the user's terminal device 30, the transaction permission unit 660 may determine that the user does not satisfy the conditions for transaction execution. In S725, upon returning from S745, the priority setting unit 640 reads current information regarding each transaction from the database 200 and resets the priority of the transaction counterparty. The priority setting unit 640 may set a lower priority for other users who have concluded a trade with a user other than the user. In S730, which has returned from S745, the location moving unit 630 moves the tradable location where the user can trade a tradable object with another user in accordance with the movement of the other user. In S735, which has returned from S745, the guidance notification unit 650 instructs the display processing unit 240 to perform processing to display, on the user's terminal device 30, the tradable location where the user can trade with another user. The guidance notification unit 650 notifies the user of guidance information in accordance with the priority reset in S725, which has returned from S745, or the tradable location to which the location moving unit 630 has moved in S730, which has returned from S745. For example, the guidance notification unit 650 may notify the user of second guidance information to a location in the virtual space where the user can trade a tradable object with a second other user in response to the user being unable to trade with a first other user to whom the first guidance information has been notified.

[0073] If the transaction permission unit 660 determines that the user satisfies the predetermined conditions for executing a transaction (Yes in S745), the server device 20 proceeds to S750. In S750, the transaction permission unit 660 enables a transaction of a tradable object between the user and another user. As an example, the transaction permission unit 660 enables a transaction of a tradable object between the user and another user when a location in the virtual space associated with the user's real location is within a predetermined range from a tradable location. When a location in the virtual space associated with the user's real location is within a range where a tradable location can be selected on the display screen of the terminal device 30 and the user operates (touches, clicks, etc.) a landmark, object, icon, etc. located at a tradable location, the transaction permission unit 660 may instruct the game processing unit 220 to execute the transaction. Alternatively, when a position in the virtual space associated with the user's real-world position is within a range in which code information can be read and when code information placed at a real-world position associated with a tradeable position is read by the user's terminal device 30, the trade permission unit 660 may instruct the game processing unit 220 to execute a trade of a tradeable object between the user and another user. When the identification information acquisition unit 616 acquires code information from the user's terminal device 30, the trade permission unit 660 may instruct the game processing unit 220 to execute the trade. When the identification information acquisition unit 616 acquires code information from the user's terminal device 30 and the instruction input unit 210 acquires an instruction to execute the trade from the user's terminal device 30, the trade permission unit 660 may instruct the game processing unit 220 to execute the trade.

[0074] In S755, the game processing unit 220 executes a transaction of tradable objects between the user and another user. The game processing unit 220 may execute the transaction of objects based on information about transactions stored in the database 200 and information about objects owned by each user. The game processing unit 220 performs a process of collecting objects to be passed from the user to another user, and a process of granting objects to be received by the user from another user, based on information about objects owned by the user stored in the database 200. The game processing unit 220 performs a process of collecting objects to be passed from other users to the user, and a process of granting objects to be received by other users, based on information about objects owned by other users stored in the database 200.

[0075] According to the server device 20 described above, users can trade objects with each other at tradeable locations in the virtual space associated with real-world locations, thereby obtaining and utilizing new objects through trading, thereby increasing the level of interest.

[0076] 8 shows an example of a blockchain processing flow in the server device 20 according to this embodiment. In response to the completion of the processing flow in FIG. 7, the server device 20 starts the processing flow of this figure in order to manage and store the transaction history of each item in a highly secure manner. Alternatively, the server device 20 may start the processing flow of this figure every time a predetermined time has elapsed (e.g., every 24 hours) or every time a predetermined time has arrived (e.g., 0:00).

[0077] In S810, the database connection unit 600 acquires data relating to the transaction stored in the database 200. In S820, the database connection unit 600 registers in the database 200 the transaction history of each object that was the subject of the transaction.

[0078] In S830, the blockchain processing unit 680 determines whether to register in the blockchain 670 the transaction of the object whose information was registered in the database 200 in S820. The blockchain processing unit 680 may determine at least one object from among multiple objects whose transaction is to be recorded in the blockchain 670 based on at least one of the object's rarity or the number of objects in the virtual space. For example, the blockchain processing unit 680 may record in the blockchain 670 transactions of objects whose rarity exceeds a certain rank or whose number of objects in the virtual space is less than a predetermined number. The server device 20 may record in the database 200 transactions of objects whose rarity does not exceed a certain rank or whose number of objects in the virtual space is greater than a predetermined number, but not in the blockchain 670. A server device 20 with such functionality can record transactions of rare objects in a highly secure manner. If the blockchain processing unit 680 determines not to register the transaction of the object in the blockchain 670 (No in S830), the server device 20 terminates the flow of this figure.

[0079] If the blockchain processing unit 680 determines to register the object transaction in the blockchain 670 (Yes in S830), the server device 20 proceeds to S840. In S840, the blockchain processing unit 680 records the transaction of at least one object among the multiple objects in the virtual space in the blockchain 670. This allows the server device 20 to record the object transaction in a highly secure manner. When one of the multiple objects is traded with another user, the blockchain processing unit 680 may record information about the user who performed the transaction or information about the location of the transaction in the blockchain 670. For example, the blockchain processing unit 680 may record the location where at least one object was traded with another user in the blockchain 670. By including information about the location of the transaction in the blockchain 670 in this way, the server device 20 can improve the reliability of information about object transactions. When a block is added to the blockchain 670, the blockchain processing unit 680 may reflect the object transaction recorded in the added block in the virtual space. This allows the server device 20 to reflect only highly reliable transactions in the virtual space. If the transaction of the object recorded in the added block is a transaction between one user and another user, the blockchain processing unit 680 may add the object retrieved from the data associated with the one user's user ID to the data associated with the other user's user ID, and may add the object retrieved from the data associated with the other user's user ID to the data associated with the one user's user ID.

[0080] 9 shows an example of the data structure for each transaction stored in database 200. Database 200 stores transaction status data for each transaction. The transaction status data includes information on the "transaction ID," "receiving user," "transaction location," "transaction conditions," "transaction result," "transaction user," and "transaction details."

[0081] The "transaction ID" is information for identifying the corresponding transaction, and may be a number uniquely determined within the system 10. The "receiving user" indicates a user who is soliciting the corresponding transaction. The "receiving user" may be an NPC set by the management, etc. The "transaction location" indicates a location where the corresponding transaction can be carried out. Here, the "transaction location" may be real-world location information or may be location information within a virtual space. Furthermore, the "transaction location" may be the location where the corresponding user is located, or may be a location a certain distance away from the location where the corresponding user is located.

[0082] The "transaction conditions" indicate the transaction conditions desired by the "reception user" in the corresponding transaction. The "transaction conditions" may be information about an object that the "reception user" wishes to transfer through the transaction, or may be information about an object that the "reception user" wishes to acquire through the transaction. The "transaction status" indicates the status of the corresponding transaction. If the corresponding transaction is being solicited but has not yet been executed, the "transaction status" may be stored as "soliciting." If the corresponding transaction has been executed, the "transaction status" may be stored as "transaction completed." If the solicitation is canceled without the corresponding transaction being executed, the "transaction status" may be stored as "solicitation canceled."

[0083] The "transaction user" indicates the user who is the trading partner of the corresponding transaction. The "transaction user" may be an NPC set by the management, etc. The "transaction content" indicates the execution content of the transaction when the corresponding transaction is executed. In S755 of FIG. 7, the game processing unit 220 may write the "transaction content" of the executed transaction to the database 200.

[0084] 10 shows a first example of a display on the terminal device 30 according to this embodiment. In response to the target user acquiring a tradable object, the display processing unit 240 generates a display screen 1000 and transmits it to the target user's terminal device 30. The display screen 1000 includes a trading item 1010 and a trade request button 1020.

[0085] The trading item 1010 indicates a tradeable object acquired by the target user. In the example shown in the figure, the trading item 1010 is an image showing the appearance of the tradeable object.

[0086] The transaction request button 1020 is a button for starting the transaction process. In response to the target user clicking the transaction request button 1020, the instruction input unit 210 may receive an instruction to start the transaction process. In response to the instruction input unit 210 receiving the instruction to start the transaction process, the server device 20 may start the processing flow shown in FIG.

[0087] 7, the information notification unit 650 instructs the display processing unit 240 to perform processing to display, on the terminal device 30 of the target user, tradeable locations where the target user can trade with other users. The display processing unit 240 generates a display screen 1030 and transmits it to the terminal device 30 of the target user. The display screen 1030 has a map window 1040 and a guide window 1052.

[0088] The map window 1040 is an area for displaying a map of the virtual space based on a real map. The map window 1040 includes a playable character 1042, a first trading character 1044, a second trading character 1046, a third trading character 1048, an arrow 1050, and a guide window 1052. The playable character 1042 represents a character operated by the target user. The playable character 1042 is located at a position in the virtual space corresponding to the target user's real-world location. The first trading character 1044, the second trading character 1046, and the third trading character 1048 represent characters associated with other users with whom the target user can trade. The first trading character 1044, the second trading character 1046, and the third trading character 1048 are located at positions in the virtual space where transactions can be conducted with the associated other users. The first trading character 1044, the second trading character 1046, and the third trading character 1048 may be images of characters operated by other associated users, or may be fixed or random images prepared by the operator or operating organization of the system 10.

[0089] The arrow 1050 is one piece of guidance information to a location in the virtual space where a transaction is possible. In the example shown in the figure, the arrow 1050 points from the playable character 1042 to the first trading character 1044. Alternatively, the arrow 1050 may be another form, such as a line indicating a real-world route from the playable character 1042 to the first trading character 1044. The guidance window 1052 is an area that displays text information among the guidance information to a location in the virtual space where a transaction is possible. In the example shown in the figure, the display screen 1030 includes the arrow 1050 and the guidance window 1052, but may include only one of them. Furthermore, in the example shown in the figure, the display screen 1030 includes only guidance information to the first trading character 1044, but may also include guidance information to at least one of the second trading character 1046 and the third trading character 1048.

[0090] In response to the game processing unit 220 executing the transaction in S755 of FIG. 7, the display processing unit 240 generates a display screen 1070 and transmits it to the terminal device 30 of the target user. The display screen 1070 is a screen indicating that the transaction has been completed. The display screen 1070 includes a trading item 1080. The trading item 1080 indicates an object that the target user has acquired through the transaction. In the example shown in this figure, the trading item 1080 is an image indicating the appearance of the object acquired through the transaction.

[0091] FIG. 11 shows a second example of the display of the terminal device 30 according to this embodiment. The display screen 1000 and the display screen 1070 are the same as those shown in FIG. 10. If the location moving unit 630 determines a trading spot independent of the location information of each user as a trading location in S730 of FIG. 7, the guidance notification unit 650 instructs the display processing unit 240 to perform processing to display guidance information to the trading spot determined by the location moving unit 630 on the terminal device 30 of the target user in S735 of FIG. 7. The display processing unit 240 may generate a display screen 1100 and transmit it to the terminal device 30 of the target user. The display screen 1100 includes a map window 1110 and a guidance window 1052. The guidance window 1052 is the same as that shown in FIG. 10.

[0092] The map window 1110 is an area for displaying a map of the virtual space based on a real-world map. The map window 1110 includes a playable character 1042, a trading spot 1120, and an arrow 1050. The playable character 1042 is the same as in FIG. 10. The trading spot 1120 indicates a tradable location in the virtual space where the target user can trade with other users or NPCs. In the example shown in this figure, the trading spot 1120 is a trading spot that is not associated with other users. The arrow 1050 is one piece of guidance information to a tradable location in the virtual space. In the example shown in this figure, the arrow 1050 points from the playable character 1042 to the trading spot 1120, but other aspects are possible.

[0093] 12 shows a third example of the display of the terminal device 30 according to this embodiment. When the instruction input unit 210 receives an instruction from the target user via the terminal device 30 to display a transaction condition setting screen, the display processing unit 240 generates a display screen 1200 and transmits it to the target user's terminal device 30. The display screen 1200 includes a transaction item list 1210 and a registration button 1220.

[0094] The trade item list 1210 is an area where the target user sets trade conditions. The trade item list 1210 may be an area where the target user sets conditions for objects they wish to transfer to other users through a trade. In the example shown in the figure, the trade item list 1210 sets trade conditions from a list of tradeable objects owned by the target user. The trade item list 1210 may also set trade conditions in other ways, such as by free input. The trade item list 1210 may allow the selection of one or more tradeable objects. In the example shown in the figure, the trade item list 1210 indicates that the target user wishes to transfer a "sharp sword" and a "large shield" to other users through a trade. Alternatively, the trade item list 1210 may allow the user to specify tradeable objects by object rarity (only high-rarity objects can be specified), by object quantity (only objects owned by two or more users can be specified), or by object implementation year (only objects implemented before 2020 can be specified).

[0095] The register button 1220 is a button for setting and saving transaction conditions. In response to the user of the terminal device 30 clicking the register button 1220, the instruction input unit 210 may receive an instruction to set transaction conditions. In response to the instruction input unit 210 receiving the instruction to set transaction conditions, the condition setting unit 620 sets the transaction conditions (S720 in FIG. 7). The condition setting unit 620 may write the set transaction conditions to the database 200. For example, the condition setting unit 620 may update the "transaction conditions" in FIG. 9.

[0096] In response to the user of the terminal device 30 clicking the registration button 1220, the guidance notification unit 650 notifies the target user of guidance information to a location where a transaction can be conducted under conditions that satisfy the transaction conditions set in the transaction item list 1210. As an example, the guidance notification unit 650 may instruct the display processing unit 240 to generate a display screen 1250 and transmit it to the target user's terminal device 30. The display screen 1250 has a map window 1260 and a guidance window 1052. The guidance window 1052 is the same as that shown in FIG. 10.

[0097] The map window 1260 includes a playable character 1042, a first trading character 1044, a second trading character 1046, a third trading character 1048, a trading spot 1120, and an arrow 1050. The playable character 1042, the first trading character 1044, the second trading character 1046, and the third trading character 1048 are the same as in Figure 10. The trading spot 1120 may be the same as in Figure 11 and may be a location that is easily visited by multiple users.

[0098] The arrow 1050 is one piece of guidance information to a trading location where a transaction can be made under conditions that satisfy the trading conditions set by the trading item list 1210. If there is no trading location near the target user where a transaction can be made under conditions that satisfy the trading conditions, the guidance notification unit 650 may notify the target user of guidance information to the trading spot 1120. In the example of this figure, the arrow 1050 is an arrow pointing from the playable character 1042 to the trading spot 1120.

[0099] 13 shows a fourth example of the display of the terminal device 30 according to this embodiment. When the instruction input unit 210 receives an instruction from the target user via the terminal device 30 to display a priority setting screen, the display processing unit 240 generates a display screen 1300 and transmits it to the terminal device 30 of the target user. The display screen 1300 includes a priority order window 1310 and a registration button 1320.

[0100] The priority window 1310 is an area for the target user to set transaction priorities. The priority window 1310 may also be an area for the target user to set weights for multiple transaction conditions. In the example shown in the figure, the priority window 1310 is an area for selecting one or more of the multiple transaction conditions and setting weights for the selected transaction conditions. The display processing unit 240 may display a list of transaction conditions in the priority window 1310, from which one or more transaction conditions can be selected. The display processing unit 240 may display a list in the priority window 1310 in which weights can be set in multiple predetermined stages, or may display a slider or the like in the priority window 1310 in which weights can be set in continuous stages. In the example shown in the figure, the priority window 1310 indicates that the target user desires a transaction that satisfies the conditions of "high purchase price," "multiple items available for trading," and "close to the current location," but does not necessarily need to satisfy the conditions of "friendship" and "mission completion." In the example shown in this figure, the priority window 1310 indicates that the weighting of the condition "Buy at a high price" is set to "High," the weighting of the condition "Multiple items can be traded" is set to "Medium," and the weighting of the condition "Close to current location" is set to "Low." Here, "Buy at a high price" may refer to a transaction in which the target user can obtain more in-game currency as a result of the transaction. "Multiple items can be traded" may refer to a transaction in which the target user can transfer multiple objects owned by the target user to the trading partner in a single transaction. "Close to current location" may refer to a transaction in which the target user's current location is close to a location where the transaction can be performed. "Having a friend relationship" may refer to a transaction in which the other user who will be the trading partner is associated with the target user. "Mission accomplished" may refer to a transaction in which the transaction results in the achievement of a mission set by the management, etc.

[0101] The register button 1320 is a button for setting and saving the priority of transaction conditions. In response to the user of the terminal device 30 clicking the register button 1320, the instruction input unit 210 may receive an instruction to set the priority of transaction conditions. In response to the instruction input unit 210 receiving the instruction to set transaction conditions, the priority setting unit 640 sets the priority of each trading partner (S725 in FIG. 7). The priority setting unit 640 may set a higher priority for a trading partner that can satisfy a higher priority transaction condition, or may set a higher priority for a trading partner that can satisfy more transaction conditions.

[0102] In response to the user of the terminal device 30 clicking the registration button 1320, the guidance notification unit 650 notifies the target user of guidance information to a location where a transaction can be conducted under conditions that satisfy the transaction conditions set in the priority window 1310. As an example, the guidance notification unit 650 may instruct the display processing unit 240 to generate a display screen 1350 and transmit it to the terminal device 30 of the target user. The display screen 1350 has a map window 1360 and a guidance window 1052. The guidance window 1052 is similar to that shown in FIG. 10 .

[0103] The map window 1360 includes a playable character 1042, a first trading character 1044, a second trading character 1046, a third trading character 1048, and an arrow 1050. The playable character 1042, the first trading character 1044, the second trading character 1046, and the third trading character 1048 are the same as those in FIG. 10. In the example shown in this figure, the display processing unit 240 displays the priority of each trading partner set by the priority setting unit 640 around the first trading character 1044, the second trading character 1046, and the third trading character 1048.

[0104] The arrow 1050 is one of the guide information to a trading location where a trade can be made under the conditions that satisfy the trading conditions set by the trading item list 1210. In the example shown in this figure, the arrow 1050 indicates the guide information to the first trading character 1044, which is set to the highest priority.

[0105] FIG. 14 shows a fifth example of a display on the terminal device 30 according to this embodiment. In S735 of FIG. 7, the notification unit 650 instructs the display processor 240 to display, on the terminal device 30 of the target user, available trading locations where the target user can trade with other users. The display processor 240 generates a display screen 1400 and transmits it to the terminal device 30 of the target user. The display screen 1400 includes a map window 1410 and a guide window 1052. The guide window 1052 is similar to that shown in FIG. 10. The map window 1410 includes a playable character 1042, a first trading character 1044, a second trading character 1046, a third trading character 1048, and an arrow 1050. The playable character 1042, the first trading character 1044, the second trading character 1046, the third trading character 1048, and the arrow 1050 are similar to those shown in FIG. 10.

[0106] When a location in the virtual space associated with the target user's real location is within a predetermined range from a location where a transaction is possible, and when reading of code information is set as a condition for executing the target transaction, the display processing unit 240 may generate a display screen 1430 and transmit it to the target user's terminal device 30. The display screen 1430 has a scan window 1440 and a transaction execution button 1450.

[0107] The scan window 1440 may be an area that displays an image captured by the input device 50 or the like of the terminal device 30 of the target user. In the example of the figure, the scan window 1440 includes an identification code 1442. The identification code 1442 is code information placed at a real position. In the example of the figure, the identification code 1442 is a QR code (registered trademark), but it may be other code information such as a barcode. In response to the identification code 1442 being displayed in the scan window 1440, the identification information acquisition unit 616 acquires the identification information. In S745 of FIG. 7, in response to the identification information acquisition unit 616 acquiring the identification information, the transaction permission unit 660 sets the transaction to be executable.

[0108] The transaction execution button 1450 is a button for executing a transaction. The transaction execution button 1450 may be clickable only if the transaction permission unit 660 has determined that the transaction can be executed in S750 of FIG. 7. In response to the target user clicking the transaction execution button 1450, the transaction permission unit 660 instructs the game processing unit 220 to execute the transaction. In response to the game processing unit 220 executing the transaction in S755 of FIG. 7, the display processing unit 240 generates a display screen 1470 and transmits it to the terminal device 30 of the target user. The display screen 1470 is a screen indicating that the transaction has been completed. The display screen 1470 includes a transaction item 1080. The transaction item 1080 is the same as that in FIG. 10.

[0109] Figure 15 shows an example of the data structure for each item stored in the blockchain 670. The blockchain 670 stores item status data for each item. Each block of item status data includes a hash value, a nonce value, and one or more transaction data. The hash value is generated based on the data contained in the block immediately preceding the corresponding block. The nonce value is a value required to add the corresponding block to the blockchain 670. The hash value of the subsequent block changes depending on the nonce value. Therefore, if a block is tampered with, the hash value of the subsequent block will be different from the hash value of an untampered block. Therefore, the blockchain 670 is extremely difficult to tamper with and highly secure. The transaction data may include information such as the "item name," "chronological information," "acquisition status," "owner," "exchange target," "status," "staking reward," and "item storage address."

[0110] The "item name" is information for identifying the corresponding item. The "chronological information" indicates the date and time when the corresponding block was updated. The "acquisition status" indicates whether the corresponding item was acquired by a user at the date and time recorded in the "chronological information." The "owner" indicates information for identifying the user who acquired the corresponding item, if the corresponding item was acquired by a user at the date and time recorded in the "chronological information." The "exchange target" indicates whether the corresponding item is tradable at the date and time recorded in the "chronological information." The "status" indicates the status of the corresponding item at the date and time recorded in the "chronological information." The "status" may include location information of the corresponding item at the date and time recorded in the "chronological information." The "status" may include the transaction history of the corresponding item. Here, the "transaction history" may include information identifying the user who performed the transaction and location information of the location where the transaction was performed. The "staking reward" is a reward obtained by holding a specific item for a specified period of time. Incidentally, temporary rewards outside of the specified period may also be recorded and managed on the blockchain. The reward amount recorded in the rewards may be the reward per item, or the total reward amount if multiple items are owned. It may also be the accumulated amount of past rewards. Staking rewards may vary depending on the user's movement status (distance traveled, movement time, movement speed, locations reached, locations passed through) and exchange status (from which user the item was received). The "storage address of the item" indicates the storage address of the corresponding item at the date and time recorded in the "chronological information".

[0111] Upon receiving instructions from the system 10, the blockchain 670 may add updated item state data each time there is an update to at least one of the item's status, i.e., the item's acquisition status, owner, whether it is eligible for exchange, status, or storage address. The blockchain 670 records one or more items of item state data as a single block. The blockchain 670 may record item state data that exceeds the capacity of the block in the next block and link it to the previous block.

[0112] Each block in the blockchain 670 may record data used to manage the blockchain 670, such as the hash value of the previous block, a nonce value, and a link to the previous block, in addition to one or more pieces of item status data. Because the blockchain 670 has a data structure in which blocks, each containing the hash value of the previous block, are linked together, if any block is tampered with, the hash value of the tampered block will become inconsistent with the hash values ​​of subsequent blocks. In this way, the blockchain 670 can record a series of blocks that are difficult to tamper with.

[0113] The blockchain processing unit 680 may record information about the movements of a user who owns at least one object in the blockchain 670. A user who owns at least one object recorded in the blockchain 670 manages the object using a wallet associated with the user. When recording information about the user's movements in the blockchain 670, the blockchain processing unit 680 generates a transaction to update information about the user's movements associated with the object, and records the object with updated information about the user's movements in the blockchain 670 after the transaction is approved by the server device 20 or another server device that manages the wallet of the user who owns the object. The blockchain processing unit 680 may record information about the movements of a user who owns at least one of multiple objects in the blockchain 670, such as current or past location information, current or past destination information, current or past waypoint information, current or past means of transportation information, current or past direction of movement, current or past speed of movement, etc.

[0114] Here, if information about the user's movement is frequently reflected in an object in the blockchain 670 as the user moves, a high load may be placed on the blockchain network, which may take time to reflect the transaction, or the accumulated value of gas fees (transaction processing fees) associated with transaction processing may become large, depending on the type of blockchain 670. Therefore, the blockchain processing unit 680 may set the interval for recording information about the user's movement in the blockchain 670 to be equal to or greater than a predetermined reference time (for example, every 10 minutes, every hour, every day, etc.).

[0115] The blockchain processing unit 680 may record information about the user's movement in the blockchain 670 when the information has changed by a predetermined threshold or more, and may not record information about the user's movement in the blockchain 670 when the information has changed within a range less than the threshold. For example, when the current position of the user is 500 m or more away from the user's position associated with the object and recorded in the blockchain 670, the blockchain processing unit 680 may update information about the user's movement for the object.

[0116] When the user comes to a specific location or a specific range, the blockchain processing unit 680 may record information about the user's movement regarding an object associated with the user in the blockchain 670. When the user comes to a real location or its vicinity that is associated with a specific spot where a visitor is given a benefit or the like in content provided by the system 10, the blockchain processing unit 680 may record information about the user's movement regarding an object associated with the user in the blockchain 670. When the user comes to a landmark such as a station, bus stop, or tourist attraction or its vicinity, the blockchain processing unit 680 may record information about the user's movement regarding an object associated with the user in the blockchain 670.

[0117] Note that the system 10 may record a portion of the item status data in the blockchain 670 and record the remaining data in the database 200. For example, the system 10 may record and update location information indicating the location of an item, images or videos of an item, or other information that is updated less frequently than a threshold or data whose data volume is equal to or exceeds a threshold, in the database 200 without including it in the item status data. This allows the system 10 to reduce the block update frequency of the blockchain 670 and reduce the load of block generation.

[0118] The system 10 may be connected to two or more blockchains 670, and may use two or more blockchains 670 to record different types of data (e.g., item status data and character status data, etc.) on separate chains.

[0119] Various embodiments of the present invention may be described with reference to flowcharts and block diagrams, where the blocks (e.g., blocks in flowcharts, blocks designated as "means" or "unit") may represent (1) stages of a process in which operations are performed or (2) sections of an apparatus responsible for performing the operations. Particular stages and sections may be implemented by dedicated circuitry, programmable circuitry provided with computer-readable instructions stored on a computer-readable medium, and / or a processor provided with computer-readable instructions stored on a computer-readable medium. Dedicated circuitry may include digital and / or analog hardware circuitry and may include integrated circuits (ICs) and / or discrete circuits. Programmable circuitry may include reconfigurable hardware circuitry including logical AND, logical OR, logical XOR, logical NAND, logical NOR, and other logic operations, flip-flops, registers, memory elements such as field programmable gate arrays (FPGAs), programmable logic arrays (PLAs), etc.

[0120] A computer-readable medium may include any tangible device capable of storing instructions that are executed by an appropriate device, such that the computer-readable medium having instructions stored thereon comprises an article of manufacture containing instructions that can be executed to create means for performing the operations specified in the flowcharts or block diagrams. Examples of computer-readable media may include electronic, magnetic, optical, electromagnetic, and semiconductor storage media. More specific examples of computer-readable media may include floppy disks, diskettes, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), electrically erasable programmable read-only memory (EEPROM), static random access memory (SRAM), compact disc read-only memory (CD-ROM), digital versatile disc (DVD), Blu-ray disc, memory stick, integrated circuit card, and the like.

[0121] The computer readable instructions may include either assembler instructions, Instruction Set Architecture (ISA) instructions, machine instructions, machine-dependent instructions, microcode, firmware instructions, state-setting data, or source or object code written in any combination of one or more programming languages, including object-oriented programming languages ​​such as Smalltalk®, JAVA®, C++, etc., and conventional procedural programming languages ​​such as the “C” programming language or similar programming languages.

[0122] The computer-readable instructions may be provided to a processor or programmable circuitry of a programmable data processing apparatus, such as a computer, locally or over a local area network (LAN), a wide area network (WAN) such as the Internet, etc., which executes the computer-readable instructions to create means for performing the operations specified in the flowcharts or block diagrams.

[0123] Here, the computer may be a computer such as a PC (personal computer), tablet computer, smartphone, workstation, server computer, or general-purpose computer, or may be a computer system in which multiple computers are connected. Such a computer system in which multiple computers are connected is also called a distributed computing system, and is a computer in the broad sense. In a distributed computing system, the multiple computers collectively execute a program by each executing a part of the program and passing data between the computers as needed during program execution.

[0124] Examples of processors include computer processors, central processing units (CPUs), processing units, microprocessors, digital signal processors, controllers, microcontrollers, etc. A computer may have one or more processors. In a multiprocessor system with multiple processors, each processor executes a portion of a program and passes data between processors as needed during program execution, allowing the multiple processors to collectively execute the program. For example, in multitasking, each of the multiple processors may execute a portion of each task in small chunks by switching tasks at time slice intervals. In this case, which portion of a program each processor executes changes dynamically. Alternatively, which portion of a program each of the multiple processors executes may be statically determined by multiprocessor-aware programming.

[0125] 16 illustrates an example of a computer 2200 in which aspects of the present invention may be embodied, in whole or in part. Programs installed on the computer 2200 may cause the computer 2200 to function as or perform operations associated with an apparatus or one or more sections of the apparatus according to embodiments of the present invention, and / or to perform a process or steps of a process according to embodiments of the present invention. Such programs may be executed by the CPU 2212 to cause the computer 2200 to perform specific operations associated with some or all of the blocks of the flowcharts and block diagrams described herein.

[0126] A computer 2200 according to this embodiment includes a CPU 2212, a RAM 2214, a graphics controller 2216, and a display device 2218, which are interconnected by a host controller 2210. The computer 2200 also includes input / output units such as a communication interface 2222, a hard disk drive 2224, a DVD-ROM drive 2226, and an IC card drive, which are connected to the host controller 2210 via an input / output controller 2220. The computer also includes legacy input / output units such as a ROM 2230 and a keyboard 2242, which are connected to the input / output controller 2220 via an input / output chip 2240.

[0127] The CPU 2212 operates according to programs stored in the ROM 2230 and RAM 2214, thereby controlling each unit. The graphics controller 2216 acquires image data generated by the CPU 2212 into a frame buffer or the like provided in the RAM 2214 or into the graphics controller 2216 itself, and causes the image data to be displayed on the display device 2218.

[0128] The communications interface 2222 communicates with other electronic devices via a network. The hard disk drive 2224 stores programs and data used by the CPU 2212 in the computer 2200. The DVD-ROM drive 2226 reads programs or data from the DVD-ROM 2201 and provides the programs or data to the hard disk drive 2224 via the RAM 2214. The IC card drive reads programs and data from an IC card and / or writes programs and data to an IC card.

[0129] The ROM 2230 stores therein a boot program or the like that is executed by the computer 2200 upon activation, and / or programs that depend on the hardware of the computer 2200. The input / output chip 2240 may also connect various input / output units to the input / output controller 2220 via a parallel port, a serial port, a keyboard port, a mouse port, etc.

[0130] The programs are provided by a computer-readable medium such as a DVD-ROM 2201 or an IC card. The programs are read from the computer-readable medium, installed in the hard disk drive 2224, RAM 2214, or ROM 2230, which are also examples of computer-readable media, and executed by the CPU 2212. Information processing described in these programs is read by the computer 2200, and brings about cooperation between the programs and the various types of hardware resources described above. An apparatus or method may be configured by realizing information manipulation or processing in accordance with the use of the computer 2200.

[0131] For example, when communication is performed between the computer 2200 and an external device, the CPU 2212 may execute a communication program loaded into the RAM 2214 and instruct the communication interface 2222 to perform communication processing based on the processing described in the communication program. Under the control of the CPU 2212, the communication interface 2222 reads transmission data stored in a transmission buffer processing area provided in the RAM 2214, the hard disk drive 2224, the DVD-ROM 2201, or a recording medium such as an IC card, and transmits the read transmission data to the network, or writes reception data received from the network to a reception buffer processing area or the like provided on the recording medium.

[0132] The CPU 2212 may also cause all or a necessary portion of a file or database stored on an external recording medium such as the hard disk drive 2224, the DVD-ROM drive 2226 (DVD-ROM 2201), an IC card, etc. to be read into the RAM 2214, and perform various types of processing on the data on the RAM 2214. The CPU 2212 then writes back the processed data to the external recording medium.

[0133] Various types of information, such as various types of programs, data, tables, and databases, may be stored on the recording medium and may undergo information processing. The CPU 2212 may perform various types of processing on data read from the RAM 2214, including various types of operations, information processing, conditional judgment, conditional branching, unconditional branching, information search / replacement, etc., as described throughout this disclosure and specified by the instruction sequences of the programs, and write the results back to the RAM 2214. The CPU 2212 may also search for information in a file, database, etc. on the recording medium. For example, if multiple entries each having an attribute value of a first attribute associated with an attribute value of a second attribute are stored on the recording medium, the CPU 2212 may search for an entry that matches a condition specified by the attribute value of the first attribute from among the multiple entries, read the attribute value of the second attribute stored in the entry, and thereby obtain the attribute value of the second attribute associated with the first attribute that satisfies a predetermined condition.

[0134] The present invention has been described above using embodiments, but the technical scope of the present invention is not limited to the scope of the above embodiments. Although the embodiments relate to games, the present invention is not limited to games and can be widely applied. For example, the present invention can be applied to health support apps, map apps, traffic guidance apps, advertising apps, educational apps, fitness and training apps, etc. It will be apparent to those skilled in the art that various modifications and improvements can be made to the above embodiments. It is clear from the claims that such modifications and improvements are also included within the technical scope of the present invention. Note that technical configurations known as of the filing date but not described herein may also be adopted as appropriate.

[0135] It should be noted that the execution order of each process, such as operations, procedures, steps, and stages, in the devices, systems, programs, and methods shown in the claims, specifications, and drawings is not specifically stated as "before," "prior to," etc., and that the processes can be performed in any order unless the output of a previous process is used in a subsequent process. Even if the operational flow in the claims, specifications, and drawings is described using "first," "next," etc. for convenience, this does not mean that the processes must be performed in this order.

[0136] "Addendum" According to the specification and drawings of the present application, the following features are also disclosed as appendices. "assignment" The purpose is to increase interest. "Solution" (Appendix 1) Computer, a guidance notification unit that notifies a user of guidance information of a tradable location in the virtual space associated with a real location where the user can trade the tradable object with another user in the virtual space when the user has the tradable object with the other user in the virtual space; A program that functions as a (Appendix 2) The computer a condition setting unit that sets trading conditions for the tradable object in response to an instruction from the user; It functions as The guidance notification unit notifies the user of guidance information to the trading location where the tradable object can be traded under conditions that satisfy the trading conditions. The program described in Appendix 1. (Appendix 3) The program described in Appendix 2, wherein the guidance notification unit determines a location in the virtual space to notify the user of the guidance information based on at least one of the transaction history, the movement history of each user in the virtual space, the characteristics of each location in the virtual space, or the characteristics of real locations corresponding to each location in the virtual space, when there are no other users who can trade the tradable object under conditions that satisfy the transaction conditions. (Appendix 4) The guidance notification unit, in response to the user being unable to trade with the other user to whom the first guidance information has been notified, notifies the user of second guidance information to a location in the virtual space where the user can trade the tradable object with another user different from the other user. The program described in Appendix 3. (Appendix 5) The computer a priority setting unit that sets a higher priority as a trading partner to a user with whom the user can trade the tradable object under more advantageous trading conditions, among a plurality of other users; It functions as The guidance notification unit notifies the user of guidance information to a location where a transaction can be made with another user to whom a higher priority is set, with higher priority than guidance information to a location where a transaction can be made with another user to whom a lower priority is set. The program described in Appendix 1. (Appendix 6) The computer a position moving unit that moves the tradable position where the tradable object can be traded with the other user in accordance with the movement of the other user; 10. The program of claim 1, (Appendix 7) The computer a transaction permission unit that allows a transaction of the tradable object between the user and the other user when a position in the virtual space associated with the user's real position is within a predetermined range from the tradable position; 10. The program of claim 1, (Appendix 8) The program described in Appendix 7, wherein the transaction permission unit executes a transaction of the tradable object between the user and the other user when code information placed at a real location associated with the tradable location is read by the user's terminal device. (Appendix 9) 2. The program according to claim 1, wherein the notification unit notifies the user of the guidance information when information about the user satisfies a predetermined condition. (Appendix 10) The program according to claim 1, wherein the information notification unit notifies the user of location information of a place where the other user is likely to visit after a certain time. (Appendix 11) The program described in Appendix 10, wherein the notification unit notifies the user of location information of a location where the other user is likely to visit within a certain period of time if the user and the other user have a predetermined relationship. (Appendix 12) The computer a blockchain processing unit that records a transaction of at least one object among the plurality of objects in the virtual space in a blockchain; 10. The program of claim 1, (Appendix 13) The program described in Appendix 12, wherein the blockchain processing unit determines the at least one object from among the plurality of objects for which a transaction will be recorded in the blockchain based on at least one of the rarity of the object or the number of objects in the virtual space. (Appendix 14) The program described in Appendix 12, wherein the blockchain processing unit records information regarding the movement of a user who owns the at least one object in a blockchain. (Appendix 15) 15. The program according to claim 14, wherein the blockchain processing unit records, in a blockchain, a location where the at least one object was traded with the other user.

[0137] The solution constituted by the above program may be appropriately applied to the fields of devices, systems, methods, and media. [Explanation of symbols]

[0138] 10 system, 20 server device, 30 terminal device, 40 network, 50 input device, 60 display device, 200 database, 210 instruction input unit, 220 game processing unit, 230 transaction processing unit, 240 display processing unit, 300 terminal input processing unit, 305 terminal status acquisition unit, 310 terminal transmission unit, 320 terminal reception unit, 330 terminal display processing unit, 600 database connection unit, 610 acquisition unit, 612 instruction acquisition unit, 614 location information acquisition unit, 616 identification information acquisition unit, 620 condition setting unit, 630 location movement unit, 640 priority setting unit, 650 guidance notification unit, 660 transaction permission unit, 670 blockchain, 680 blockchain processing unit, 1000 display screen, 1010 transaction item, 1020 transaction request button, 1030 display screen, 1040 map window, 1042 Operation character, 1044 First transaction character, 1046 Second transaction character, 1048 Third transaction character, 1050 Arrow, 1052 Guide window, 1070 Display screen, 1080 Transaction item, 1100 Display screen, 1110 Map window, 1120 Transaction spot, 1200 Display screen, 1210 Transaction item list, 1220 Registration button, 1250 Display screen, 1260 Map window, 1300 Display screen, 1310 Priority window, 1320 Registration button, 1350 Display screen, 1360 Map window, 1400 Display screen, 1410 Map window, 1430 Display screen, 1440 Scan window, 1442 Identification code, 1450 Transaction execution button, 1470 Display screen, 2200 Computer, 2201 DVD-ROM, 2210 Host controller, 2212 CPU, 2214 RAM, 2216 graphics controller, 2218 display device, 2220 input / output controller, 2222 communication interface, 2224 hard disk drive, 2226 DVD-ROM drive, 2230 ROM, 2240 input / output chip, 2242 keyboard

Claims

1. Computer, a position determination unit that determines the position of a spot where an object can be traded with another user according to at least one of the user's play status and the type of object the user wishes to trade; A program that functions as a

2. The program according to claim 1 , wherein the position determining unit moves the spot where the object can be traded at predetermined time intervals.

3. The computer a priority setting unit that sets a higher priority for tradable spots associated with more other users than for tradable spots associated with fewer other users; The program according to claim 1, wherein the program functions as follows:

4. The computer a notification unit that notifies the user of guidance information for the tradable spots for which a higher priority is set, giving priority to guidance information for the tradable spots for which a lower priority is set; The program according to claim 3, which causes the program to function as follows:

5. A system including a position determination unit that determines the position of a spot where an object can be traded with another user, depending on the user's playing status or the type of object the user wishes to trade.