Computer system, communication control method, and program
The computer system dynamically adjusts communication modes in virtual spaces based on user situations, addressing the inflexibility of fixed specifications in existing systems to improve user experience.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- BANDAI NAMCO ENTERTAINMENT INC
- Filing Date
- 2022-11-30
- Publication Date
- 2026-06-23
AI Technical Summary
Existing virtual space services have fixed communication function specifications that do not adapt to the varying needs of users based on their situations, leading to suboptimal user experience.
A computer system that dynamically adjusts communication modes based on detected situations between avatars, allowing for different input tolerance settings and restrictions, including character limits, content types, and participation conditions, by using contact detection, situation determination, and application mode determination.
Enables flexible communication features tailored to user circumstances, enhancing user experience by allowing for either in-depth or light communication based on the context of the interaction.
Smart Images

Figure 0007879018000001 
Figure 0007879018000002 
Figure 0007879018000003
Abstract
Description
Technical Field
[0001] The present invention relates to a computer system and the like.
Background Art
[0002] Technologies for multiple users to share a virtual space are known (see, for example, Patent Document 1). In the shared virtual space, avatars for each user are arranged, and each user can go to various places in the virtual space through the avatar and enjoy various virtual experiences. Services provided through such a virtual space are called "virtual space services."
Prior Art Documents
Patent Documents
[0003]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0004] Virtual space services often have a communication function for users who meet in the virtual space to communicate with each other in that virtual space. The so-called chat function is a typical example.
[0005] The specifications of the communication function are generally fixed depending on the rules and design of the virtual space service. For example, there are specifications where the types of data that can be input operatively are limited to characters, and there are also specifications where a small image (video or still image) can be attached. There are also those that can chat with voice or video. Examples of restrictions related to operation input include the character count limit for a single message, whether data can be attached or not, the file format and file size of the attached data, etc. Examples of restrictions related to the input content include prohibited words and restricted words.
[0006] However, the specifications of communication features desired by users are not always uniform. For example, users with ample time, such as during breaks, are likely to enjoy in-depth conversations using text and images. Such users would prefer communication features that allow free text input and the attachment of small images, without character limits, restrictions on data attachments, or usage time limits. On the other hand, users who are in a hurry to reach their destination or who are using content provided in virtual space services (e.g., virtual shopping, games, etc.) are likely to only enjoy greetings and brief conversations, and are not likely to engage in in-depth communication. Such users would prefer communication features with moderate restrictions, as this allows for lighter communication that is less time-consuming and requires less effort. For example, they might prefer light communication using pre-set phrases and emojis, even if free text input is not possible.
[0007] Beyond these examples, the specifications of communication features desired by users are often rooted in the situations in which communication is required. One problem with traditional communication features is that, despite the variety of situations, their specifications were fixed.
[0008] The problem that this invention aims to solve is to provide a technology that enables the specification of communication functions to be changed according to the situation. [Means for solving the problem]
[0009] The first invention for solving the above-mentioned problems is a computer system that controls a communication function for users to communicate with each other by operating their respective avatars placed in a virtual space, A contact detection means for detecting contact between the first avatar and the second avatar (for example, the server processing unit 200s in Figure 10, the contact detection unit 222, and step S10 in Figure 15), In response to the detection by the contact detection means, a situation determination means (for example, the situation determination condition data 540 in Figure 6, the server processing unit 200s in Figure 10, the situation determination unit 224, and step S16 in Figure 15) determines the situation related to the contact, An application mode determination means (for example, the mode definition data 610 in Figure 5, the server processing unit 200s in Figure 10, the application mode determination unit 226 in Figure 15, step S18 in Figure 15) determines, based on the determination result of the situation determination means, which is an application mode determination means that determines, from among multiple communication modes with different input tolerance settings for communication, the application mode to be used when the first user, who is the user of the first avatar, and the second user, who is the user of the second avatar, communicate, When detection is made by the contact detection means, a communication control means (for example, the server processing unit 200s in Figure 10, the communication control unit 228 in Figure 15, step S38 in Figure 15) controls the communication function so that communication between the first user and the second user is carried out in the applied communication mode, It is a computer system equipped with [the following features].
[0010] The computer system of the first invention, upon detecting contact between a first avatar and a second avatar, determines the situation related to the contact. Based on the determination of the situation, it then selects an applicable communication mode from among several communication modes with different input tolerance settings, and controls the communication between the first user and the second user to be carried out in the applicable communication mode. In other words, it relates to the communication function in a virtual space service, and makes it possible to change the specifications applied to the communication function according to the situation of communication between users.
[0011] The second invention is a computer system in which, in the above-mentioned computer system, the plurality of communication modes are modes in which users communicate with each other by posting to one another.
[0012] The computer system of the second invention can have a communication mode in which users communicate with each other by posting to one another.
[0013] The third invention is a computer system in which the above-described computer system includes modes in which any of the following conditions differ as input permission settings: number of characters to post, post content, number of consecutive posts, number of recipients, time period during which posts can be made, and type of information that can be posted (for example, input permission setting data 620 in Figure 5).
[0014] The computer system of the third invention may include modes in which any of the following conditions differ as input permission settings: number of characters to post, post content, number of consecutive posts, number of recipients, time period during which posting is permitted, and type of information that can be posted.
[0015] The fourth invention is a computer system in which the above-described computer system includes a mode in which posting is performed only with pre-configured posting partners and a mode in which posting partners can be added midway (for example, the mid-post participation permission flag 629 in Figure 5).
[0016] The computer system of the fourth invention may include in its communication modes a mode in which posting is performed only with pre-configured recipients, and a mode in which recipients can be added midway through the process.
[0017] The fifth invention is a computer system in which the plurality of communication modes include modes that require the consent of the communication partner at the start and / or end of communication, and modes that do not (for example, the consent request flag 628 in Figure 5).
[0018] The computer system of the fifth invention may include in its communication modes a mode that requires the consent of the communication partner at the start and / or end of communication, and a mode that does not.
[0019] The sixth invention is a computer system in which the situation determination means determines a situation based on any of the following (for example, the situation determination condition data 540 in Figure 6): 1) the actions of the first avatar, 2) the state of the first avatar, 3) the actions of the second avatar, 4) the state of the second avatar, 5) the position of the first avatar, 6) the position of the second avatar, 7) the relative positional relationship between the first avatar and the second avatar, and 8) the relative orientation of the first avatar and the second avatar.
[0020] The computer system of the sixth invention can determine a situation by using the actions and states of the first and second avatars (states that can be seen from their appearance, such as sitting or standing still), the relative position and orientation of the first and second avatars, and other determination factors. Therefore, it can determine situations in detail.
[0021] The seventh invention is a computer system in which, in the above-described computer system, the situation determination means determines the situation based on a series of actions of the first avatar and / or the second avatar (for example, the first avatar action condition 551, the second avatar action condition 552, and the linked action condition 553 in Figure 6).
[0022] The computer system of the seventh invention can determine a situation based on a series of actions of the first avatar and the second avatar. Therefore, the situation can be determined in detail.
[0023] The eighth invention is a computer system in the above computer system, in which the situation determination means determines a situation based on the relationship between the first user and the second user or the relationship between the attribute of the first avatar and the attribute of the second avatar (for example, the user relationship condition 561 and the avatar attribute condition 562 in FIG. 6).
[0024] The computer system of the eighth invention can determine a situation in detail based on the relationship between the first user and the second user (for example, whether they are friend-registered, whether they belong to the same team, whether they belong to the same user group, whether their genders are the same, etc.) or the relationship related to the attributes of the first avatar and the second avatar (for example, whether the avatar races or categories are the same in the world of the virtual space, whether the affiliated forces are the same in the world of the virtual space, etc.).
[0025] The ninth invention is a computer system in the above computer system, in which the situation determination means re-determines the situation while the first user and the second user are communicating (for example, step S42 in FIG. 15), and the application mode determination means dynamically changes the application communication mode according to the result of the re-determination by the situation determination means (for example, step S44 in FIG. 15, step S46 in FIG. 16).
[0026] The computer system of the ninth invention can dynamically change the application communication mode according to the change of the situation during communication.
[0027] The tenth invention is a computer system in which, in the above-described computer system, the plurality of communication modes include modes of input tolerance settings with different degrees of leniency, the situation determination means re-determines the change in situation as communication progresses, and the application mode determination means changes the application communication mode by changing to a mode with a different degree of leniency according to the result of the re-determination by the situation determination means.
[0028] The computer system of the tenth invention can change the applied communication mode to a mode with a degree of leniency appropriate to the changed situation when communication progresses and the situation changes.
[0029] The eleventh invention is a computer system in which, in the above-described computer system, the application mode determination means changes the application communication mode by changing to a mode in which the difference in the degree of leniency between the modes before and after the change satisfies a predetermined large difference condition when the change in the situation re-determined by the situation determination means satisfies a given sudden change condition (for example, steps S150 and S152 in Figure 23).
[0030] The computer system of the eleventh invention can, when communication progresses and the situation changes to satisfy the conditions of a sudden change, instantly switch to a mode with a degree of leniency that satisfies the conditions of a large difference.
[0031] The twelfth invention is a communication control method in which a computer system controls a communication function for users to communicate with each other by operating their respective avatars placed in a virtual space, and the method includes: detecting contact between a first avatar and a second avatar; determining the situation relating to the contact in response to the detection; determining, based on the determined situation, which communication mode to be applied when a first user, who is the user of the first avatar, and a second user, who is the user of the second avatar, communicate, from among a plurality of communication modes with different input tolerance settings for communication; and, when the detection is made, controlling the communication function to carry out communication between the first user and the second user in the applied communication mode.
[0032] According to the twelfth invention, a control method that produces the same effects as the above invention can be realized.
[0033] The 13th invention is a program for a computer system to control a communication function for users to communicate with each other by operating their respective avatars placed in a virtual space, and the program is configured to make the computer system function as follows: contact detection means for detecting contact between a first avatar and a second avatar; situation determination means for determining the situation relating to the contact in response to the detection by the contact detection means; application mode determination means for determining, based on the determination result of the situation determination means, which is an applicable communication mode for when a first user, who is the user of the first avatar, and a second user, who is the user of the second avatar, communicate, from among a plurality of communication modes with different input tolerance settings for communication; and communication control means for controlling the communication function so that when detection is made by the contact detection means, communication between the first user and the second user is carried out in the applicable communication mode.
[0034] According to the 13th invention, a computer system that produces the same effects as the above inventions can be realized. [Brief explanation of the drawing]
[0035] [Figure 1] A system configuration diagram showing an example of a virtual space service system. [Figure 2] A diagram illustrating virtual space services. [Figure 3] A diagram illustrating communication functions. [Figure 4] A diagram illustrating communication functions. [Figure 5] A diagram showing an example of the data structure for mode definition data. [Figure 6] A diagram showing an example of the data structure for situation determination condition data. [Figure 7] A diagram showing the results of situation determination and examples of applicable communication modes. [Figure 8] A diagram showing the results of situation determination and examples of applicable communication modes. [Figure 9] A diagram showing the results of situation determination and examples of applicable communication modes. [Figure 10] A block diagram showing an example of the functional configuration of a server-side system. [Figure 11] A diagram showing examples of programs and data stored in the server's memory unit. [Figure 12] A diagram showing an example of the data structure for avatar management data. [Figure 13] A diagram showing an example of the data structure of communication management data. [Figure 14] A functional block diagram showing an example of the functional configuration of a user terminal. [Figure 15] A flowchart illustrating the processing flow related to communication functions. [Figure 16] Flowchart continuing from Figure 15. [Figure 17] A diagram showing an example of the functional configuration of a virtual space service system in the second embodiment. [Figure 18] A functional block diagram showing an example of the functional configuration of a user terminal in the second embodiment. [Figure 19] A diagram showing examples of programs and data stored in the terminal storage unit of the second embodiment. [Figure 20] A flowchart illustrating the processing flow related to the communication function in the second embodiment. [Figure 21] Flowchart continuing from Figure 20. [Figure 22] Flowchart continuing from Figure 20. [Figure 23] A flowchart to explain the change processing flow. [Modes for carrying out the invention]
[0036] Examples of embodiments of the present invention will be described below, but it goes without saying that the embodiments to which the present invention can be applied are not limited to the following embodiments.
[0037] [First Embodiment] Figure 1 is a system configuration diagram showing an example of the configuration of a virtual space service system according to the present invention. The virtual space service system 1000 is a computer system that allows multiple users to simultaneously participate in a common virtual space constructed with 3DCG (3-Dimensional Computer Graphics) using their respective user character avatars, move freely within the virtual space using their avatars, and receive various content provided within the virtual space through their avatars.
[0038] The virtual space service system 1000 is a computer system that includes a server-side system 1010 connected via network 9 for data communication, and user-specific user terminals 1500 (1500a, 1500b, ...). The user terminals 1500 serve as the Man-Machine Interface (MMIF).
[0039] Network 9 refers to a communication path capable of data communication. In other words, Network 9 includes not only LANs (Local Area Networks) using dedicated lines (dedicated cables) or Ethernet (registered trademark) for direct connections, but also telephone communication networks, cable networks, and the Internet.
[0040] The server-side system 1010 is a computer system operated by the operator of the virtual space service system 1000, and comprises a portal server system 1100P and a plurality of content server systems 1100G (1100Ga, 1100Gb, ...).
[0041] The portal server system 1100P is a computer system that provides the basic mechanism of the virtual space and is the front-end server system that the user terminal 1500 of a user participating in the virtual space first accesses. The portal server system 1100P performs, for example, user registration control, avatar customization control, avatar control within the virtual space, control of events within the virtual world, and control of the provision of various content according to the position and movement of the avatar. It also stores and manages information about registered users and avatar settings. The portal server system 1100P may also perform other controls depending on the content provided in the virtual space. Furthermore, one or more of these controls may be implemented by a back-end server.
[0042] The content server system 1100G (1100Ga, 1100Gb, ...) is a backend server for providing one or more types of content to user terminals 1500 as clients. The content provided can be configured as needed. For example, it could include shopping, gameplay, museum / art gallery visits, movie viewing, events, sports viewing, etc.
[0043] The portal server system 1100P and the content server system 1100G each consist of a main unit, keyboard, touch panel, etc., with a control board 1150 mounted on the main unit. The control board 1150 is equipped with various microprocessors such as a CPU (Central Processing Unit) 1151, a GPU (Graphics Processing Unit), and a DSP (Digital Signal Processor), various IC memories 1152 such as VRAM, RAM, and ROM, and a communication device 1153. Note that part or all of the control board 1150 may be implemented using an ASIC (Application Specific Integrated Circuit), FPGA (Field-Programmable Gate Array), or SoC (System on a Chip).
[0044] The portal server system 1100P and the content server system 1100G each realize separate functions through calculation processing performed by the control board 1150 based on predetermined programs and data.
[0045] In Figure 1, the portal server system 1100P and the content server system 1100G are depicted as if they were each a single server device, but they may also be implemented using multiple devices. For example, the portal server system 1100P may be configured with multiple blade servers, each handling different functions, connected to each other via an internal bus for data communication, or it may include a database and online storage. The same applies to the content server system 1100G.
[0046] Furthermore, part or all of the content server system 1100G may be operated by an operator different from the operator of the virtual space service system 1000 and the portal server system 1100P.
[0047] The user terminal 1500 is a computer system used by the user to participate in the virtual space, and it functions as the human-machine interface in the virtual space service system 1000.
[0048] User terminals 1500 (1500c, 1500b, ...) are computer systems that can connect to the network 9, such as personal computers, smartphones, wearable computers, portable game consoles, home game consoles, and tablet computers.
[0049] When the main computer and various devices connected to it perform a single function as a whole, the main computer and the various devices can be considered as a single user terminal 1500. For example, in Figure 1, user terminal 1500c shows an example where a VR (Virtual Reality) MMIF set 1580 is connected to a desktop PC. The VR MMIF set 1580 includes VR goggles 1581, a VR headset 1583, a VR controller 1585, etc. User terminal 1500b in Figure 1 is exemplified as a smartphone alone, but user terminal 1500b may also be configured to include the VR MMIF set 1580, similar to user terminal 1500c.
[0050] The user terminal 1500 includes an operation input device (e.g., touch panel 1506, keyboard, game controller, mouse, etc.), an image display device (e.g., touch panel 1506, head-mounted display, etc.), and a control board 1550.
[0051] The control board 1550 is equipped with a CPU 1551, various microprocessors such as a GPU and DSP, various IC memories 1552 such as VRAM, RAM, and ROM, and a communication module 1553 that connects to the network 9. These elements mounted on the control board 1550 are electrically connected via bus circuits and the like, enabling data reading and writing, and signal transmission and reception. Part or all of the control board 1550 may be configured with ASICs, FPGAs, or SoCs. The control board 1550 stores programs and various data necessary to realize the functions of the user terminal 1500 in the IC memory 1552. By executing a predetermined application program, the user terminal 1500 realizes the functions of a man-machine interface for the virtual space service system 1000, and a client for users to receive various content.
[0052] The user terminal 1500 is configured to download programs related to the virtual space service and various data necessary for their execution from the portal server system 1100P, but it may also be configured to read them from a storage medium such as a memory card obtained separately by the user.
[0053] Figure 2 is a diagram illustrating the virtual space services provided by the virtual space service system 1000. For ease of understanding, only one avatar 4 of user 2 (a user performing real-time operations related to virtual space 3; a participating user) is depicted in the diagram. However, in actual operation, multiple avatars 4 may exist simultaneously within virtual space 3.
[0054] Virtual Space 3 is a digital data space constructed with 3DCG, in which multiple users 2 can participate simultaneously using their respective avatars 4, and each user can act freely with their avatar 4. Virtual Space 3 may be a parallel world with the same flow of time as reality, a parallel world with a time difference from the time of the real world, or a world with its own unique time where time flows at a different speed than in reality. Even if there are no participating users 2, Virtual Space 3 continues to exist as data in the server-side system 1010, and time progresses in Virtual Space 3 along with the passage of time in the real world, and the world represented in Virtual Space 3 continues to change. On the user terminal 1500, an image of Virtual Space 3 is basically displayed from a first-person perspective as seen from the viewpoint of avatar 4. However, the image of Virtual Space 3 may also be an image from a third-person perspective.
[0055] Virtual spots 6 (6a, 6b, ...) are set up within virtual space 3 for each piece of content. In the example in Figure 2, virtual spot 6 is depicted as a store, but it could also be set up as an open area like a plaza. User 2, who has joined virtual space 3 after logging in, can use the content offered at virtual spot 6 by moving their avatar 4 to that spot. Examples include shopping, playing games, visiting art museums and museums, watching movies, attending events, watching sports, etc.
[0056] In the example shown in Figure 2, moving avatar 4 to virtual spot 6a makes it possible to purchase electronic books and magazines as content A at the virtual bookstore, which is virtual spot 6a. By moving Avatar 4 to Virtual Spot 6b, a game will be offered as Content B in the game center, which is Virtual Spot 6b, and gameplay will become possible. The content of the game in Content B can be set as appropriate. For example, the user can become a player and set up a player character 10 (the user character in Content B), and use this to engage in battles with enemy NPCs (Non-Player Characters) 12, progressing through the game by surviving.
[0057] Moving Avatar 4 to virtual spot 6c allows the user to purchase electronic goods as content C at the virtual general store, which is virtual spot 6c. Moving Avatar 4 to virtual spot 6d allows the user to view a live music performance as content D at the live music venue, which is virtual spot 6d. Note that the number of virtual spots 6 prepared for each piece of content provided in virtual space 3 is not limited to the example in Figure 2, and many more can be set in actual operation. The content provided at each virtual spot 6 is also not limited to the example in Figure 2.
[0058] Figures 3 and 4 are diagrams illustrating the communication functions included with the virtual space service. One of the functions of the virtual space service is a posting-based communication function. Users using the virtual space service (participating users) can use this posting-based communication function to post messages to each other and communicate within the virtual space 3 via their avatars 4. Posting refers to making statements or sending messages in communication.
[0059] The communication function has multiple modes with different "input permission settings," and the applicable mode can be dynamically switched. "Input permission settings" refer to specifications such as restrictions on the communication function and settings that the user can input during communication. Input permission settings can also be described as setting restrictions.
[0060] Figure 3 shows an example of controlling the communication function using Mode M1, where the user is allowed to input text and a small image. Figure 4 shows an example of controlling the communication function using Mode M2, where the user is only allowed to input a small image. In actual operation, there are many more input permission settings for each mode than these examples show.
[0061] Figure 5 shows an example of the data structure of mode definition data 610, which is prepared in advance for each type of mode. One mode definition data 610 includes a mode type 611, an adaptive situation type 613 indicating the situation to which the mode is associated, a strictness level 615, and input tolerance setting data 620. Of course, other data can also be included as appropriate.
[0062] The input permission setting data 620 stores various data describing the input permission settings applied to the mode. The input permission setting data 620 includes a list of types of information that can be posted 621, a limit on the number of characters that can be posted 622, a limit on the content of posts 623, a limit on the number of consecutive posts 624, and a limit on the number of people that can be posted to 625. It also includes a time period during which posting is permitted 626, a time limit on usage 627, a consent request flag 628, and a flag that allows joining midway 629. The input permission setting data 620 is described by combining one or more of these. Note that one or more of the various data included in the input permission setting data 620 (from the list of types of information that can be posted 621 to the flag that allows joining midway 629) may be set to content equivalent to no setting or unlimited.
[0063] The types of information that can be posted in the Postable Information Type List 621 include, for example, text, small images (e.g., emojis, small images called stamps, GIF animations, etc.), still images, videos, audio, access information for accessing specific websites, etc. (e.g., URLs, QR codes, etc.), and emotes that are executed by Avatar 4 at the time of posting. Furthermore, differences in font types and font sizes that can be used for text may also be considered as different types. In the case of images, differences in image size and image resolution may also be considered as different types. The Postable Information Type List 621 is a positive list of the types of information that can be posted. For example, if Postable Information Type List 621 includes text and videos, then in that mode, users can attach video files to text and post them. If Postable Information Type List 621 includes text and access information, then in that mode, users can paste URLs, etc., into text and post them.
[0064] The character limit of 622 indicates the maximum amount of information allowed per post (equivalent to a statement, tweet, or message). If the postable information type is text, it indicates the character limit; if it's a small image, it indicates the number of images or data size that can be used in one post; if it's audio, it indicates the duration; and if it's an emote, it indicates the number or type of emote that can be used. If multiple postable information types are registered in the list 621, the limit information may be stored according to the order in which they are registered.
[0065] The content restriction 623 for posts is implemented using dictionary data to identify prohibited words and images.
[0066] A consecutive posting count of 624 represents the number of times a single user can post consecutively without any posts from other users in between.
[0067] The limit of 625 recipients per post is a restriction on the number of people you can communicate with simultaneously.
[0068] The posting time limit 626 refers to restrictions on the time period during which communication features can be used.
[0069] The consent request flag 628 indicates whether the consent of the communication partner is required at the start and / or end of the communication. It is set to "1 (flag set)" if consent is required.
[0070] The "Allow Joining Mid-Conversation" flag 629 is set to "1 (Flag Set)" when you want to allow a third-party user who has not previously participated in the communication to join the communication midway through.
[0071] In other words, the input tolerance setting indicates the degree of leniency (615) in the communication function performed in that mode, based on that setting. The difference in the degree of leniency (615) in each mode is represented as a "level value," and as the level value increases in stages, the range of what the user can do in communication gradually expands (the degree of tolerance increases, and restrictions become looser).
[0072] Each mode is assigned to the type of situation in which communication is about to begin. The "situation in which communication is about to begin" is the result of a situation determination process that is executed when "contact" between avatars is detected.
[0073] "Contact" refers to the meeting of two avatars 4 in the virtual space 3, signifying that the avatar of the user seeking communication has been deemed to have requested communication from the avatar of the user seeking communication. Hereafter, the avatar of the user seeking communication will be referred to as "First Avatar 4a," and the avatar of the user seeking communication will be referred to as "Second Avatar 4b." In the examples in Figures 3 and 4, the first user 2a of the first avatar 4a inputs a predetermined conversation command or a command to cause the first avatar 4a to perform a predetermined action at the first user terminal 1500a, and is deemed to have "requested communication," thus detecting "Contact."
[0074] The "situation" refers to the circumstances before and after the timing of contact detection. Data regarding the actions and states of the first avatar 4a and the second avatar 4b are collected and compared with the situation determination condition data 540 shown in Figure 6 to make a determination.
[0075] The situation determination condition data 540 is prepared separately for each situation type 541 and includes the determination condition definition data 550. The determination condition definition data 550 includes the first avatar action condition 551, the second avatar action condition 552, and the linked action condition 553.
[0076] The first avatar behavior condition 551 and the second avatar behavior condition 552 are conditions concerning what actions the first avatar 4a and the second avatar 4b were performing before and after the timing of contact detection. The first avatar behavior condition 551 and the second avatar behavior condition 552 are positive or negative lists indicating one or more types of actions. For example, they can include conditions relating to one or more actions, behaviors, gestures, emotes, etc. If described as an AND condition using multiple types of actions, the condition may be defined by multiple actions performed consecutively by the same avatar.
[0077] The linked action condition 553 indicates a combination of actions between the first avatar 4a and the second avatar 4b. For example, the linked action condition 553 may be set as the case where both the first avatar 4a and the second avatar 4b perform a "wave" action. In this case, it can be determined that the situation occurred when the second avatar 4b responded to the first avatar 4a's "wave" action by waving back. Conversely, if this linked action condition 553 is not met, it can be determined that the situation occurred when the second avatar 4b did not respond to the first avatar 4a's "wave" action.
[0078] Furthermore, the judgment condition definition data 550 includes a first avatar state condition 554 and a second avatar state condition 555. These indicate conditions about the current state of the avatars that can be determined from their appearance, such as the first avatar 4a and the second avatar 4b. "Current state of the avatars that can be determined from their appearance" refers to, for example, standing still, looking around as if searching for something, sitting and resting in a chair, lying down, in combat, etc., and can be set as appropriate. The first avatar state condition 554 and the second avatar state condition 555 may also be described by action type information, pose type information, or internal parameter values that determine the action or pose (for example, posture information, status abnormality flags).
[0079] Furthermore, the judgment condition definition data 550 includes a first avatar position condition 556, a second avatar position condition 557, a relative position condition 558, and a relative orientation condition 559.
[0080] The first avatar position condition 556 and the second avatar position condition 557 are conditions concerning the positions of the first avatar 4a and the second avatar 4b in the virtual space 3, respectively. For example, these can be described by whether they are inside or outside a predetermined area, identification information of the virtual spot 6 (see Figure 2) where the first avatar 4a and the second avatar 4b are located, and the map type.
[0081] The relative position condition 558 is a condition concerning the relative positional relationship between the first avatar 4a and the second avatar 4b, and can be described by relative distance, relative bearing, relative altitude, etc.
[0082] The relative orientation condition 559 is a condition concerning the relative relationship between the pose of the first avatar 4a and the pose of the second avatar 4b, and can be described, for example, by the relative relationship between the frontal direction of the first avatar 4a and the frontal direction of the second avatar 4b.
[0083] Furthermore, the judgment condition definition data 550 includes user relationship conditions 561, avatar attribute conditions 562, and third avatar conditions 563.
[0084] User relationship condition 561 is a condition concerning the relationship between User 1 2a and User 2b. For example, the condition may be described as whether User 1 2a and User 2b are friends or not, whether they are the same or different genders, or their age difference. Other attributes that can be included are team affiliation, faction affiliation, and whether or not they are in an alliance.
[0085] Avatar attribute condition 562 is a condition concerning the relationship between the attributes of the first avatar 4a and the attributes of the second avatar 4b. For example, when customizing avatar 4, if you select one of the candidate races (e.g., human, elf, dwarf, etc.), the avatar's race becomes an attribute. If avatar 4 is non-humanoid (e.g., combat vehicle, warship, aircraft, robot, etc.), those categories may also be considered attributes. Other attributes that can be considered include team affiliation, faction affiliation, and whether or not there is an alliance.
[0086] Third avatar condition 563 is a condition for another avatar (the third avatar) that is acting together with the second avatar 4b. Detection of the third avatar may be achieved by searching for the corresponding avatar using one or more combinations of conditions.
[0087] Conditions for recognizing an avatar as a third avatar include, for example, conditions related to location and movement such as "conversing with the second avatar 4b," "being within a predetermined distance of the second avatar 4b," and "moving in the same (or nearly the same) direction as the second avatar 4b." Conditions related to the relationship between the second user 2b and the user of the third avatar (third user), and conditions related to the most recent communication between the second avatar 4b and the third avatar may also be set.
[0088] Figures 7 to 9 show examples of situation determination results and applicable communication modes. For example, in Figure 7, immediately before contact is detected, the first avatar 4a "waves" to get the other party's attention, and the second avatar 4b is in a "situation where they can have a thorough conversation." This situation is judged as, for example, "they approached in a gentlemanly manner, but the other party is in a situation where they can have a thorough conversation." A "situation where they can have a thorough conversation" could be, for example, the second avatar 4b being in virtual spot 6 and enjoying a virtual coffee shop, or sitting in a chair, and the definition can be set as appropriate.
[0089] Then, mode M3, which is pre-assigned to the situation, is set as the applicable communication mode, and the communication function is executed in that applicable communication mode. This initiates communication between the first avatar 4a and the second avatar 4b, that is, communication between the first user 2a and the second user 2b.
[0090] In the example shown in Figure 8, the state of the second avatar 4b is the same, but the first avatar 4a is far away from the second avatar 4b and has not performed the "waving" action immediately before. From the perspective of the second avatar 4b, this situation would be judged as "a situation lacking gentlemanly procedure, where the other party suddenly spoke to the other party without revealing their own location." Mode M33, which is more restrictive than Mode M3, is applied. In Mode M33, for example, the posting content restriction 623 (see Figure 4) is set to prevent the exchange of unpleasant words, and the usage time restriction 627 is set to be relatively short, limiting conversations to only short ones.
[0091] For example, in Figure 9(1), the second avatar 4b is passing in front of the first avatar 4a. Just before contact is detected, the first avatar 4a is "waving," and the second avatar 4b is moving in a direction that avoids facing the first avatar 4a. This situation is judged to be, for example, "a situation where one is approached in a gentlemanly manner, and the other party is not in a position to have a long conversation, but is willing to respond to simple conversation such as a greeting," and mode M4 is applied.
[0092] The applied communication mode is updated even while communication is in progress. In other words, the situation is re-evaluated while communication is taking place, and the applied communication mode setting is changed to the mode corresponding to the re-evaluated situation. This allows the control of the communication function to change dynamically.
[0093] For example, in the example in Figure 9, suppose the situation changes from Figure 9(1) to Figure 9(2) while communication is taking place. In the example in Figure 9(2), while communication is taking place, the second avatar 4b approaches the first avatar 4a and continues to communicate face-to-face. This situation is judged to be, for example, "a situation where a conversation is being continued at length." Then, mode M44, which has a higher level of tolerance 615 than the situation before the reassessment, is set as the new applicable communication mode.
[0094] Next, I will explain the functional configuration. Figure 10 is a block diagram showing an example of the functional configuration of the server-side system 1010, and it comprehensively shows the portal server system 1100P and the content server system 1100G as a single server-side system 1010.
[0095] The server-side system 1010 comprises an operation input unit 100s, a server processing unit 200s, an audio output unit 390s, an image display unit 392s, a communication unit 394s, and a server storage unit 500s.
[0096] The operation input unit 100s is a means for inputting various operations for managing the server-side system 1010. Examples of this include a keyboard, touch panel, mouse, etc.
[0097] The server processing unit 200s is implemented using electronic components such as IC memory and other arithmetic circuits, including a processor such as a CPU, GPU, ASIC, or FPGA, and controls data input and output with each functional unit, including the operation input unit 100s and the server storage unit 500s. It then performs various calculation processes based on predetermined programs and data, data received from operation input signals from the operation input unit 100s, etc., and comprehensively controls the server-side system 1010.
[0098] The server processing unit 200s of the server-side system 1010 includes a virtual space service management unit 210, a timing unit 280s, a sound generation unit 290s, an image generation unit 292s, and a communication control unit 294s. Of course, other functional units may also be included as appropriate.
[0099] The virtual space service management unit 210 implements various functions for providing virtual space services. For example, the virtual space service management unit 210 includes a user management unit 212 and a communication management unit 220.
[0100] The User Management Unit 212 handles the processing related to user registration (account registration) for the virtual space service and manages the storage of various information associated with the account. It also handles the processing related to the customization and management of avatars 4 used by registered users in the virtual space 3. Therefore, the User Management Unit 212 can also be said to be the avatar management unit.
[0101] The communication management unit 220 performs various processes to realize communication functions. The communication management unit 220 includes a contact detection unit 222, a situation determination unit 224, an application mode determination unit 226, and a communication control unit 228.
[0102] The contact detection unit 222 detects contact between the first avatar 4a and the second avatar 4b.
[0103] The situation determination unit 224 determines the situation related to the contact in response to the detection by the contact detection unit 222. Specifically, the situation determination unit 224 determines the situation based on a series of actions of the first avatar 4a and / or the second avatar 4b (see the linked action condition 553 in Figure 6). The situation determination unit 224 also determines the situation based on the relationship between the first user 2a and the second user 2b, and the relationship between the attributes of the first avatar 4a and the attributes of the second avatar 4b (see the user relationship condition 561 and avatar attribute condition 562 in Figure 6). Furthermore, while the first user 2a and the second user 2b are communicating, the situation determination unit 224 re-determines the change in the situation as the communication progresses (see Figure 9).
[0104] The Applicable Mode Determination Unit 226 determines the applicable communication mode for communication between the first user 2a, who is the user of the first avatar 4a, and the second user 2b, who is the user of the second avatar 4b, from among multiple communication modes with different input tolerance settings for communication, based on the determination result of the situation determination unit 224 (see Figures 7 and 8). Furthermore, the Applicable Mode Determination Unit 226 dynamically changes the applicable communication mode according to the result of the re-determination by the situation determination unit 224 (see Figure 9).
[0105] When a contact is detected by the contact detection unit 222, the communication control unit 228 controls the communication function to perform communication between the first user 2a and the second user 2b in the applicable communication mode (see Figures 7 and 8).
[0106] The timing unit 280s uses the system clock to perform various timing operations, such as determining the current date and time and the time limit.
[0107] The sound generation unit 290s is implemented by executing ICs and software that generate and decode audio data. The sound generation unit 290s outputs the generated audio signal to the sound output unit 390s. The sound output unit 390s is implemented by a speaker or the like and emits sound based on the audio signal.
[0108] The image generation unit 292s generates images for various management screens for system management of the server-side system 1010 and outputs the image data to the image display unit 392s. It also generates some or all of the images to be displayed on the user terminal 1500. The image display unit 392s is implemented by an image display device such as a flat panel display, head-mounted display, or projector.
[0109] The communication control unit 294s performs data processing related to data communication and enables data exchange with external devices via the communication unit 394s. The communication unit 394s connects to the network 9 to enable communication. This can be achieved by, for example, a wireless communication device, a modem, a TA (terminal adapter), a jack or control circuit for a wired communication cable, etc. In the example in Figure 1, the communication device 1153 corresponds to this.
[0110] The server storage unit 500s stores programs and various data necessary to enable the server processing unit 200s to comprehensively control the server-side system 1010. The server storage unit 500s also serves as a workspace for the server processing unit 200s, temporarily storing calculation results performed by the server processing unit 200s according to various programs. This function can be implemented using, for example, IC memory such as RAM or ROM, magnetic disks such as hard disks, optical disks such as CD-ROMs or DVDs, or online storage. In the example shown in Figure 1, this corresponds to storage media such as the IC memory 1152 and hard disks installed in the main unit of the portal server system 1100P or content server system 1100G. Online storage may also be included in the server storage unit 500s.
[0111] Figure 11 shows examples of programs and data stored in the server storage unit 500s. The server storage unit 500s stores the server program 501, the distribution client program 503, the virtual space initial setup data 510, the situation determination condition data 540 (see Figure 6), the mode definition data 610 (see Figure 5), and the user management data 660. It also stores the virtual space control data 700 and the current date and time 900. The server storage unit 500s also stores other programs and data (such as timers, counters, various flags, etc.) as appropriate.
[0112] Server program 501 is a program that enables the functions of the virtual space service management unit 210.
[0113] The distribution client program 503 is the original client program for the virtual space service that is provided to and executed on the user terminal 1500.
[0114] The virtual space initial setup data 510 stores various initial setup data related to the virtual space 3. For example, this includes data on various objects that make up the virtual space 3 and their placement data, map data for the virtual space 3, and data that identifies the reference point or range of the virtual spot 6 in the coordinate system of the virtual space 3. It may also include data that links the virtual spot 6 to content IDs, and custom material data for the avatar 4. Of course, other data can also be included as appropriate.
[0115] User management data 660 is prepared for each registered user of the virtual space service and stores various data related to that registered user. One user management data 660 includes, for example, a user account 661, user relationship information 663, avatar setting data 665, and avatar attribute data 667. Of course, other data can also be included as appropriate.
[0116] The virtual space control data 700 stores various data for controlling and managing virtual space 3. The virtual space control data 700 includes a list of participating user accounts 701 indicating users currently participating in virtual space 3, avatar management data 710, and communication management data 730.
[0117] Avatar management data 710 is created for each avatar 4 placed in the virtual space 3 and stores various data related to that avatar. One avatar management data 710 includes, for example, an avatar ID 711, an operating user account 713, position coordinates 721 in the virtual space 3, posture information 722, motion control data 723, action operation history data 724, and state parameter values 725, as shown in Figure 12. Of course, other data can also be included as appropriate.
[0118] Motion control data 723 is control data such as the position and posture of each part of the character model necessary to realize the avatar's movements, and is motion data being processed. The avatar's movements can be either automatically controlled or intentionally performed based on user input. Movements include actions, behaviors, gestures, emotes, etc.
[0119] The action operation history data 724 shows the history of operations performed by the user of the avatar during a predetermined period of time in the past. The actions covered include behaviors, gestures, emotes, etc., that the user intentionally performs.
[0120] The status parameter value 725 stores various parameter values that describe the avatar's internal factors, as well as various parameter values for automatically controlling the avatar's behavior and gestures. Examples include stamina value and flags indicating status abnormalities.
[0121] Returning to Figure 11, the communication management data 730 is created each time a contact is detected and stores various data related to the control of the communication function that is initiated from that detection. One communication management data 730 includes, for example, a communication management ID 731, a list of participating avatar IDs 732 indicating the avatars 4 participating in the communication, and a situation determination result 733, as shown in Figure 13. It also includes an applicable communication mode 734, applicable input permission setting data 735, communication start date and time 740, posting history data 742, and a third avatar ID list 744. Of course, other data can also be included as appropriate. Note that the list of participating avatar IDs 732 may be replaced with a user ID list.
[0122] Post history data 742 is created for each post made in the communication, and stores the post avatar ID, which indicates the avatar that made the post, and the post content data in association with each other.
[0123] Figure 14 is a functional block diagram showing an example of the functional configuration of the user terminal 1500. The user terminal 1500 comprises an operation input unit 100t, a terminal processing unit 200t, an audio output unit 390t, an image display unit 392t, a communication unit 394t, and a terminal storage unit 500t.
[0124] The operation input unit 100t outputs operation input signals to the terminal processing unit 200t in response to various operation inputs made by the user. This can be achieved, for example, by push switches, joysticks, touchpads, touch panels, trackballs, accelerometers, gyroscopes, etc.
[0125] The terminal processing unit 200t is implemented by, for example, a microprocessor such as a CPU or GPU, and electronic components such as IC memory, and controls data input and output between it and each functional unit, including the operation input unit 100t and the terminal storage unit 500t. It then controls the user terminal 1500 by executing various calculation processes based on predetermined programs and data, operation input signals from the operation input unit 100t, and various data received from the server-side system 1010.
[0126] The terminal processing unit 200t includes a client control unit 260, a timing unit 280t, a sound generation unit 290t, an image generation unit 292t, and a communication control unit 294t.
[0127] The client control unit 260 performs various controls to enable the user terminal 1500 to function as a human-machine interface (MMIF) in the virtual space service system 1000. Specifically, the client control unit 260 includes an operation input information provision unit 261 and a display control unit 262.
[0128] The operation input information provision unit 261 controls the transmission of operation input information to the server-side system 1010 in response to input from the operation input unit 100t.
[0129] The display control unit 262 performs control to display various images based on data received from the server-side system 1010.
[0130] The timing unit 280t uses the system clock to determine the current date and time, time limits, and other information.
[0131] The sound generation unit 290t is implemented by a processor such as a digital signal processor (DSP) or a speech synthesis IC, and an audio codec capable of playing audio files. It generates sound signals for music, sound effects, and various operation sounds, and outputs them to the sound output unit 390t. The sound output unit 390t is implemented by a device such as a speaker that outputs sound (emits sound) based on the sound signals input from the sound generation unit 290t.
[0132] The image generation unit 292t generates and outputs an image signal that displays an image to the image display unit 392t based on the control of the client control unit 260. In the example in Figure 1, this corresponds to a GPU (Graphics Processing Unit), graphics controller, graphics board, etc., mounted on the control board 1550. The image display unit 392t is implemented by a device that displays images, such as a flat panel display, head-mounted display, or projector.
[0133] The communication control unit 294t performs data processing related to data communication and enables data exchange with external devices via the communication unit 394t.
[0134] The communication unit 394t connects to network 9 to enable communication. This is achieved, for example, by a wireless communication device, modem, TA (terminal adapter), jacks and control circuits for wired communication cables, etc. In the example in Figure 1, the communication module 1553 corresponds to this.
[0135] The terminal memory unit 500t stores programs and various data necessary for the terminal processing unit 200t to implement a given function. It is also used as a workspace for the terminal processing unit 200t, and temporarily stores calculation results performed by the terminal processing unit 200t according to various programs, as well as input data received from the operation input unit 100t. These functions are realized by, for example, IC memory such as RAM or ROM, magnetic disks such as hard disks, and optical disks such as CD-ROMs or DVDs. In the example in Figure 1, the IC memory 1552 mounted on the control board 1550 corresponds to this.
[0136] Specifically, the terminal storage unit 500t stores the client program 800 (application program) for enabling the user terminal 1500 to function as a client control unit 260, and the current date and time 900. Of course, other data can also be stored as needed.
[0137] Figures 15 and 16 are flowcharts illustrating the processing flow related to the communication function performed by the server-side system 1010. As shown in Figure 15, the server-side system 1010 constantly monitors for contacts in the virtual space service. "Contact" means that two avatars 4 meet in the virtual space 3 and it is determined that the first avatar 4a has requested communication from the second avatar 4b. For example, contact may be detected when the first user 2a of the first avatar 4a inputs a predetermined conversation command on the first user terminal 1500a (see Figure 3). However, contact detection is not limited to the detection of conversation command input. For example, contact may be detected when one avatar waves its hand within the forward field of view of another avatar. In other words, contact may be detected by an action performed from one avatar toward the other when they meet.
[0138] If a contact is detected (YES in step S10), the server-side system 1010 creates communication management data 730 (see Figure 13) and registers the first avatar 4a and the second avatar 4b in the participant avatar ID list 732 (step S12).
[0139] Next, the server-side system 1010 searches for a third avatar (step S14) and determines the situation (step S16).
[0140] Next, the server-side system 1010 searches for mode definition data 610 in which the applicable situation type 613 (see Figure 5) matches the situation determination result. Then, it sets the mode type 611 of the retrieved definition data to the applicable communication mode 734 (see Figure 13) (step S18).
[0141] Next, the server-side system 1010 initiates communication between the first user 2a and the second user 2b in the applicable communication mode 734 (step S38).
[0142] In step S38, if the consent request flag 628 (see Figure 5) of the applicable communication mode 734 is "1 (flag set)", the process of obtaining consent from the second user 2b is executed. If consent is obtained, communication is started. If consent is not obtained, communication is not started. Once communication is started, it is considered a single unit of communication management until it is terminated.
[0143] Next, the server-side system 1010 executes loop A for each unit of communication management currently in progress (steps S40 to S74; Figure 16).
[0144] In loop A, the server-side system 1010 determines whether the re-evaluation condition is met (step S42). The re-evaluation condition may be, for example, every predetermined period from the communication start time 740, or every predetermined number of posts. If the re-evaluation condition is met (YES in step S42), the server-side system 1010 re-evaluates the situation (step S44).
[0145] Next, moving to Figure 16, the server-side system 1010 changes the applicable communication mode 734 to a mode that adapts to the reassessment result of the situation (step S46), and sends a notification that the communication mode has been changed (step S48). The notification may include information about what the user will and will not be able to do after the mode change, such as "Emojis are now available" or "Emojis will no longer be available."
[0146] Then, the server-side system 1010 switches to communication control using the modified applicable communication mode 734 (step S50).
[0147] Next, it is determined whether the communication to be processed satisfies predetermined termination conditions. The termination conditions may be, for example, when the elapsed time from the start reaches the usage limit time of 627, or when the first user 2a or the second user 2b performs a termination operation. If the termination conditions are met (YES in step S70), the server-side system 1010 executes a process to terminate the predetermined communication (step S72).
[0148] As described above, according to this embodiment, the specifications applied to the communication function can be changed depending on the situation.
[0149] [Second Embodiment] Next, a second embodiment of the present invention will be described. In describing the second embodiment, the differences from the first embodiment will be mainly described, and the same reference numerals as in the first embodiment will be used for components similar to those in the first embodiment, and redundant explanations will be omitted.
[0150] Figure 17 shows an example of the functional configuration of the virtual space service system 1000B in the second embodiment. The virtual space service system 1000B performs user matching with the matching server system 1100M and enables online multiplayer games to be played by facilitating communication between the user terminals 1500 of the matched users.
[0151] Figure 18 is a functional block diagram showing an example of the functional configuration of a user terminal 1500 in the second embodiment. The virtual space service management unit 210 has a game progress control unit 214. The game progress control unit 214 performs various controls to realize the online multiplayer game of the second embodiment. Specifically, each user terminal 1500 stores and manages data of the virtual space 3 (corresponding to the game space in this embodiment). Then, it exchanges information about operation input information and game progress among the matched user terminals 1500 to share information, and controls the game progress by placing multiple avatars 4 (corresponding to player characters in this embodiment) in the common virtual space 3.
[0152] Furthermore, the communication function is executed with the same specifications among the matched user terminals 1500, and the matched user terminals 1500 exchange posted information. For this reason, the communication management unit 220 has a master control unit 229.
[0153] The master control unit 229, when the user of its own unit is the first user 2a, considers its own unit to be the master unit, sets and resets the applicable communication mode 734, and controls the slave unit (the second user terminal 1500b of the second user 2b) to provide it.
[0154] Figure 19 shows an example of programs and data stored in the terminal storage unit 500t in the second embodiment. In the second embodiment, the terminal storage unit 500t stores a virtual space control program 801 for enabling the terminal processing unit 200t to function as a virtual space service management unit 210, and matching data 803. The matching data 803 includes access information for enabling data communication with the user terminal 1500 of the other user matched by the matching server system 1100M.
[0155] In the second embodiment, the terminal storage unit 500t stores user management data 660 only for the user of its own unit. Furthermore, regarding communication management data 730, it stores only the communication data in which the user of its own unit participates.
[0156] Figures 20 to 22 are flowcharts illustrating the processing flow related to the communication function performed by the user terminal 1500 in the second embodiment. It should be noted that, as a prerequisite, the user terminals 1500 have already been matched and are exchanging operation input information and game progress information with each other.
[0157] As shown in Figure 20, the user terminal 1500 detects a contact in which its own user avatar becomes the first avatar (step S11), instead of step S10 in the first embodiment. Upon detecting a contact in step S11, the user terminal 1500 becomes a master device responsible for controlling the communication initiated by that contact and executes steps S12 to S72 (see Figure 21). The slave device is the second user terminal 1500b of the second user 2b.
[0158] Specifically, the user terminal 1500, which has become the master unit, sets the applicable communication mode 734 and then sends a communication request to the slave unit, specifying the applicable communication mode 734 as the mode, along with the communication management ID 731 (step S22).
[0159] Furthermore, the user terminal 1500, which has become the master unit, changes the applicable communication mode 734 after reassessment and then sends a predetermined change request to the slave unit, along with the communication management ID 731 and the destination mode indicating the newly set applicable communication mode 734 (step S49).
[0160] Moving to Figure 21, when the user terminal 1500, which has become the master unit, finds that the communication termination conditions are met (YES in step S70), it sends a predetermined communication termination request to the slave unit along with the communication management ID 731 (step S71).
[0161] Moving on to Figure 22, if a communication request is received from the matching user terminal 1500 (YES in step S90), the user terminal 1500, as the slave device involved in that communication, executes steps S92 to S106.
[0162] Specifically, when the user terminal 1500, which has become a slave device, receives a communication request, it sets the specified mode to the applicable communication mode 734 (step S92) and starts controlling the communication function (step S94).
[0163] In step S92, when a communication request is received, communication management data 730 may be created (see Figure 13). In the participating avatar ID list 732, the avatar of the user of the requesting user terminal 1500 is designated as the first avatar 4a, and the avatar of the user of the own machine is designated as the second avatar 4b. The situation determination result 733 and the third avatar ID list 744 may be omitted.
[0164] Furthermore, when the user terminal 1500, which has become a slave device, receives a change request (YES in step S100), it changes the applicable communication mode 734 of the communication management data 730 that matches the communication management ID 731 received with the change request to the destination mode received with the change request (step S102).
[0165] Furthermore, when the user terminal 1500, which has become a slave device, receives a termination request, it YES in step S104, and terminates the communication of communication management ID 731 that it received along with the termination request (step S106).
[0166] According to the second embodiment, the same effects as the first embodiment can be obtained.
[0167] [Variation] Although examples of embodiments to which the present invention is applied have been described above, the forms to which the present invention can be applied are not limited to the above forms, and components can be added, omitted, or modified as appropriate.
[0168] (Variation 1) For example, when re-evaluating a situation, the method of selecting a mode may be changed depending on the degree of change in the situation. For example, when applied to the first embodiment, the modification process shown in Figure 23 is performed instead of step S46 (see Figure 16).
[0169] Specifically, in the change processing, the server-side system 1010 determines whether the re-evaluated situation satisfies the given sudden change conditions (step S150). The "sudden change condition" can be determined by comparing each condition described in the judgment condition definition data 550 (see Figure 6) for both the situation before reassessment and the situation after reassessment, and determining that the condition has been met if there is a difference greater than or equal to the standard value.
[0170] For example, the sudden change condition may be defined to detect a sudden change to a situation requiring more intimate communication. Specifically, the sudden change condition may be defined as when the relative position condition 558 of the situation after reassessment is smaller than or equal to a threshold value than the relative position condition 558 of the situation before reassessment. Alternatively, the sudden change condition may be defined as when, in addition to the difference in the relative position condition 558, the relative orientation condition 559 is closer to a face-to-face situation after reassessment than before reassessment. Another example is when the sudden change condition includes emotes that express happiness or joy in the first avatar behavior condition 551 or second avatar behavior condition 552 of the situation after reassessment.
[0171] Conversely, the sudden change condition may be defined in a way that allows for the detection of a sudden change to a situation requiring simpler communication. Specifically, the sudden change condition may be defined as when the relative position condition 558 of the situation after reassessment becomes greater than or equal to a threshold value compared to before reassessment (for example, when the first avatar 4a and the second avatar 4b move further apart). Alternatively, the sudden change condition may be defined as when the relative orientation condition 559 shows a greater difference in orientation than before reassessment (for example, when the first avatar 4a and the second avatar 4b start facing in different directions). Furthermore, for example, the condition may be defined as when the first avatar behavior condition 551 or the second avatar behavior condition 552 of the situation after reassessment include an emote of a type that expresses displeasure.
[0172] Then, if the sudden change condition is met (YES in step S150), the server-side system 1010 searches for a mode that satisfies a given large difference condition from the degree of leniency 615 of the applied communication mode 734 before the change. The large difference condition may be, for example, that the level difference of the degree of leniency 615 is "2" or more. Then, a population of selection candidates is created with the searched mode, and the applied communication mode 734 is set to one of the modes in the population (step S152). In other words, the input tolerance specification is changed all at once in response to a sudden change in the situation.
[0173] On the other hand, if the conditions for a sudden change are not met (NO in step S150), a mode that is appropriate to the situation after reassessment is selected, similar to step S46, and the applicable communication mode 734 is changed to this (step S154).
[0174] By executing the change process, the applicable mode determination unit 226 (see Figure 10) changes the applicable communication mode by changing to a mode where the difference in the degree of leniency between the modes before and after the change satisfies a predetermined large difference condition, if the change in the situation re-determined by the situation determination unit 224 satisfies a given sudden change condition. Note that the change process can also be replaced by step S46 of the second embodiment.
[0175] (Variation 2) Furthermore, when reassessing a situation, it is also possible to configure the system to reassess based on communication history. For example, the communication history could be determined by statistical values of the time interval between posts (e.g., mean, median, and their changes). If the statistical values exceed a predetermined threshold, the system may determine that the conversation is not going well, or that at least one party is not enthusiastic about the conversation, and apply a lower level of strictness, mode 615.
[0176] Furthermore, by comparing the language used in the post with a predetermined dictionary data, the system can determine whether friendly or unfriendly language is being used, and if it is the former, apply a higher level of leniency (615 mode), and if it is the latter, apply a lower level of leniency (615 mode). [Explanation of Symbols]
[0177] 2a...First User 2b...Second user 4a...First Avatar 4b...Second Avatar 200s... Server Processing Unit 210…Virtual Space Service Management Department 212...User Management Department 214...Game Progress Control Unit 220...Communication Management Department 222... Contact detection unit 224... Situation Determination Unit 226... Applicable mode determination unit 228...Communication Control Unit 229...Master Control Unit 500s... Server storage unit 501…Server program 503…Client program for distribution 510... Virtual space initial setup data 540... Situation determination condition data 541...Types of situations 550...Decision condition definition data 610... Mode definition data 611... Mode type 613...Types of applicable situations 615... Degree of leniency 620... Input tolerance setting data 660...User management data 663...User Relationship Information 667... Avatar attribute data 700…Virtual space control data 710...Avatar management data 730...Communication management data 733... Situation Judgment Result 734...Applicable communication mode 800…Client Program 801...Virtual Space Control Program 1000…Virtual Space Service System 1010…Server-side system 1500... User terminal
Claims
1. A computer system that controls communication functions for users to communicate with each other by operating their respective avatars placed in a virtual space, A contact detection means for detecting contact between a first avatar and a second avatar, When detection is performed by the contact detection means, a situation determination means determines an appropriate situation from among a plurality of situations based on the actions of the first avatar and / or the actions of the second avatar, An application mode determination means that determines, from among multiple communication modes to which one of the multiple situations is associated, the communication mode associated with the adapted situation is selected as the applicable communication mode when the first user, who is the user of the first avatar, and the second user, who is the user of the second avatar, communicate, and the input tolerance settings for communication differ when communicating. A communication control means controls the communication function so that, when detection is made by the contact detection means, communication between the first user and the second user is carried out in the applicable communication mode. A computer system equipped with the following features.
2. A computer system that controls communication functions for users to communicate with each other by operating their respective avatars placed in a virtual space, A contact detection means for detecting contact between a first avatar and a second avatar, A situation determination means that determines the situation related to the contact in response to the detection by the contact detection means, A mode in which users communicate with each other by posting, and an application mode determination means that determines, based on the determination result of the situation determination means, which is the applicable communication mode when the first user, who is the user of the first avatar, and the second user, who is the user of the second avatar, communicate, from among multiple communication modes with different types of information that can be posted as input permission settings when communicating. When detection is performed by the contact detection means, a communication control means controls the communication function to set the type of postable information relating to each other's posts in the communication between the first user and the second user to a setting based on the applicable communication mode, A computer system equipped with the following features.
3. The aforementioned multiple communication modes include a mode that allows posting only with pre-configured recipients and a mode that allows adding recipients midway through the process. The computer system according to claim 2.
4. A computer system that controls communication functions for users to communicate with each other by operating their respective avatars placed in a virtual space, A contact detection means for detecting contact between a first avatar and a second avatar, A situation determination means that determines the situation related to the contact in response to the detection by the contact detection means, An application mode determination means determines, based on the determination result of the situation determination means, which is selected from among multiple communication modes that allow different degrees of input related to communication, which is the applicable communication mode when the first user, who is the user of the first avatar, and the second user, who is the user of the second avatar, communicate with each other. A communication control means controls the communication function so that, when detection is made by the contact detection means, communication between the first user and the second user is carried out in the applicable communication mode. Equipped with, The situation determination means re-determines the change in the situation as communication between the first user and the second user progresses, The application mode determination means dynamically changes the degree to which communication-related inputs are permitted by dynamically changing the application communication mode according to the result of the re-determination by the situation determination means. Computer system.
5. The application mode determination means changes the application communication mode to a mode that satisfies a predetermined large difference condition when the change in the situation re-determined by the situation determination means satisfies a given sudden change condition. The computer system according to claim 4.
6. The aforementioned multiple communication modes include modes that require the consent of the communication partner at the start and / or end of communication, and modes that do not require this consent. The computer system according to any one of claims 1 to 5.
7. A communication control method in which a computer system controls communication functions for users to communicate with each other by operating their respective avatars placed in a virtual space, To detect contact between the first avatar and the second avatar, If the above detection is performed, an appropriate situation is determined from among multiple situations based on the actions of the first avatar and / or the actions of the second avatar, The input tolerance settings for communication differ, and from among multiple communication modes to which any of the above multiple situations are associated, the communication mode associated with the adapted situation is determined as the applicable communication mode when the first user, who is the user of the first avatar, and the second user, who is the user of the second avatar, communicate. When the above detection occurs, the communication function is controlled to perform communication between the first user and the second user in the applied communication mode, A communication control method including
8. A communication control method in which a computer system controls communication functions for users to communicate with each other by operating their respective avatars placed in a virtual space, To detect contact between the first avatar and the second avatar, In response to the above detection, the situation relating to the contact is determined, This is a mode in which users communicate with each other by posting, and the applicable communication mode when the first user, who is the user of the first avatar, and the second user, who is the user of the second avatar, communicate is determined based on the determined situation, from among multiple communication modes with different types of information that can be posted as input settings when communicating. When the above detection occurs, the communication function is controlled to set the type of postable information relating to each other's posts in the communication between the first user and the second user to the setting based on the applicable communication mode, A communication control method including
9. A communication control method in which a computer system controls communication functions for users to communicate with each other by operating their respective avatars placed in a virtual space, To detect contact between the first avatar and the second avatar, In response to the above detection, the situation relating to the contact is determined, From among multiple communication modes that allow different degrees of input related to communication, the applicable communication mode when the first user, who is the user of the first avatar, and the second user, who is the user of the second avatar, communicate is determined based on the determined situation. When the above detection occurs, the communication function is controlled to perform communication between the first user and the second user in the applied communication mode, Includes, The determination described above includes re-determining the changes in the situation that occur as communication between the first user and the second user progresses, The aforementioned determination includes dynamically changing the degree to which communication-related inputs are permitted by dynamically changing the applicable communication mode in accordance with the result of the re-determination. Communication control method.
10. A program for a computer system to control communication functions that allow users to communicate with each other by operating their respective avatars placed in a virtual space. Contact detection means for detecting contact between a first avatar and a second avatar. When detection is performed by the contact detection means, a situation determination means determines an appropriate situation from among a plurality of situations based on the actions of the first avatar and / or the actions of the second avatar. An application mode determination means that determines, from among multiple communication modes to which one of the multiple situations is associated, the communication mode associated with the adapted situation is the applicable communication mode when the first user, who is the user of the first avatar, and the second user, who is the user of the second avatar, communicate, where the input tolerance settings for communication differ. When detection is made by the contact detection means, a communication control means controls the communication function to perform communication between the first user and the second user in the applicable communication mode. A program for causing the aforementioned computer system to function.
11. A program for a computer system to control communication functions that allow users to communicate with each other by operating their respective avatars placed in a virtual space. Contact detection means for detecting contact between a first avatar and a second avatar. A situation determination means determines the situation related to the contact in response to the detection by the contact detection means. A mode in which users communicate with each other by posting, and an application mode determination means that determines, based on the determination result of the situation determination means, which is the applicable communication mode when the first user, who is the user of the first avatar, and the second user, who is the user of the second avatar, communicate, from among multiple communication modes with different types of information that can be posted as input settings when communicating. When detection is performed by the contact detection means, the communication control means controls the communication function so that the type of postable information relating to each other's posts in the communication between the first user and the second user is set according to the applicable communication mode. A program for causing the aforementioned computer system to function.
12. A program for a computer system to control communication functions that allow users to communicate with each other by operating their respective avatars placed in a virtual space. Contact detection means for detecting contact between a first avatar and a second avatar. A situation determination means determines the situation related to the contact in response to the detection by the contact detection means. An application mode determination means determines, based on the determination result of the situation determination means, which is selected from among multiple communication modes that allow different degrees of input related to communication, to be applied when a first user, who is the user of the first avatar, and a second user, who is the user of the second avatar, communicate with each other. When detection is made by the contact detection means, a communication control means controls the communication function to perform communication between the first user and the second user in the applicable communication mode. The computer system is made to function as follows: The situation determination means re-determines the change in the situation as communication between the first user and the second user progresses, The application mode determination means dynamically changes the degree to which communication-related inputs are permitted by dynamically changing the application communication mode according to the result of the re-determination by the situation determination means. program.