Information processing system, storage medium having stored therein system program, storage medium having stored therein game program
The system facilitates selective sharing of game images within communication groups based on user roles and game content, addressing privacy and development efficiency in multiplayer games.
Patent Information
- Application Number
- JP2025055466
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2025-03-28
- Publication Date
- 2026-01-30
AI Technical Summary
Existing systems lack efficient mechanisms for sharing application images among users, particularly in multiplayer games, without compromising privacy and development efficiency.
A system and method for forming communication and game groups, allowing selective sharing of game images based on user identification, team composition, and game content, with commands in the game program to control sharing permissions.
Enables appropriate sharing of game images within communication groups, enhancing privacy and development efficiency by allowing precise control over image sharing based on user roles and game context.
Smart Images

Figure 2026015704000001_ABST
Abstract
Description
[Technical Field]
[0001] The present invention relates to an information processing system, a system program, a game program, and an information processing method that perform processing using a plurality of information processing devices. [Background technology]
[0002] Conventionally, there exists a system for sharing application images with other users (for example, FIG. 12 of Patent Document 1). [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Japanese Patent Application Laid-Open No. 2024-68845 Summary of the Invention [Problem to be solved by the invention]
[0004] There was room for improvement in how application images could be shared with other users. [Means for solving the problem]
[0005] The present invention can employ, for example, the following configurations (1) to (18).
[0006] (1) One example configuration of the information processing system of the present invention includes a means for forming a communication group for communication and executing a communication function among a plurality of communication members using network communication; a means for forming a game group for playing a multiplayer game and executing the multiplayer game while generating game image data for each of the game members using network communication or another network communication among the plurality of game members; and a means for sharing the game image with other users by displaying a game image based on the generated game image data on the display of other communication members of the affiliated communication group to which the game member to which the game image is directed belongs, while prohibiting the game image from being displayed on the display of at least one of the communication members of the affiliated game group to which the game member to which the game image is directed belongs.
[0007] According to the above configuration (1), game images can be appropriately shared in a communication group.
[0008] (2) In the above configuration (1), the device may further include a means for setting, among the communication members of the associated communication group, game members belonging to the associated game group, game members identified in accordance with predetermined rules determined by the currently running multiplayer game, as targets of prohibition.
[0009] According to the above configuration (2), game images can be shared depending on the content of the game.
[0010] (3) In the configuration (1) or (2) above, the device may further include a means for storing identification information of game members of the game group to which the device belongs, and a means for setting game members who meet predetermined conditions as targets of prohibition based on the identification information.
[0011] According to the above configuration (3), it is possible to appropriately set prohibition of sharing of game images based on the identification information of game members.
[0012] (4) In any one of the above configurations (1) to (3), the multiplayer game may be a team competition game, in which case the system may further include means for storing team composition data including identification data of game members of each team in the team competition game, and means for setting game members of an opposing team in the team competition game as targets of prohibition based on the team composition data.
[0013] According to the above configuration (4), it is possible to appropriately prohibit game members of the opposing team from sharing game images.
[0014] (5) In any one of the above configurations (1) to (4), the multiplayer game may be a game in which users participate as players and users participate as spectators. In this case, the game system may further include a means for storing member data including game member identification data that identifies the users participating as players and the users participating as spectators. Based on the member data, at least one of the users participating as players may be set as a prohibited user, while users participating as spectators may not be prohibited.
[0015] According to the above configuration (5), it is possible to appropriately set prohibition of sharing of game images for users who participate as players in a multiplayer game.
[0016] (6) In any one of the above configurations (1) to (5), the system may further include an execution means for executing the game program. A first game program for executing a multiplayer game may be stored in memory as the game program executed by the execution means. The system may further include a means for storing identification information of game members of the game group to which the system belongs. In this case, the first game program may include a first command for setting game members who satisfy a predetermined condition as targets for prohibition based on the identification information.
[0017] According to the above configuration (6), the prohibition setting for sharing game images is set by the game program, so that the prohibition setting for sharing can be set appropriately according to the content of the game.
[0018] (7) In the above configuration (6), a second game program for executing a multiplayer game may be stored in the memory as the game program executed by the execution means. In this case, the second game program may include a second command for prohibiting all game members of the game group to which the player belongs.
[0019] According to the above configuration (7), the developer of a game program can set prohibition of sharing of game images by including the second command in the game program, thereby improving development efficiency.
[0020] (8) In the configuration (6) or (7) above, a third game program for executing a multiplayer game may be stored in the memory as the game program executed by the execution means. In this case, the third game program may include a third command for prohibiting all users.
[0021] According to the above configuration (8), the developer of a game program can set prohibition of sharing of game images by including the third command in the game program, thereby improving development efficiency.
[0022] (9) In the above configuration (6), the game programs executed by the execution means may be storable in the memory as a second game program and a third game program for executing a multiplayer game. In this case, the second game program may include a second command for prohibiting all game members of the associated game group. The third game program may include a third command for prohibiting all communication members of the associated communication group.
[0023] According to the above configuration (9), the developer of the game program can set prohibition of sharing of game images by including the second command and the third command in the game program, respectively, thereby improving development efficiency.
[0024] (10) In any one of the above configurations (1) to (9), the device may further comprise means for setting all communication members of the communication group to which the user belongs as targets of prohibition based on an instruction from the user.
[0025] According to the above configuration (10), it is possible to set prohibition of sharing of game images by user operation.
[0026] (11) In any one of the configurations (1) to (10) above, a plurality of game devices may be provided. The multiplayer game may be a game in which a host device among the plurality of game devices acquires operation data of a guest device among the plurality of game devices, and executes a game program using the operation data of the host device and the operation data of the guest device to generate game image data for the host device and the guest device.
[0027] According to the above configuration (11), the host device executes a game program, thereby enabling a multiplayer game to be played on the guest devices as well.
[0028] (12) A first configuration example of the system program of the present invention causes a computer to receive an instruction from a means for executing a game program for a multiplayer game to prohibit the sharing of game images for all game members of a game group to which the computer belongs, and to execute processing to prohibit the display of game images based on game image data corresponding to each game member on a display, based on the game member information of the game group to which the computer belongs.
[0029] According to the above configuration (12), the system program is provided with a function for prohibiting the sharing of game images, which facilitates the development of game programs.
[0030] (13) A second configuration example of the system program of the present invention causes a computer to receive, from a means for executing a game program for a multiplayer game, an instruction to specify user identification data that are to be prohibited from sharing game images and to perform the prohibition, and to execute a process to prohibit the display of game images based on game image data corresponding to the specified prohibited user identification data on a display.
[0031] According to the above configuration (13), the system program is provided with a function for prohibiting the sharing of game images, which facilitates the development of game programs.
[0032] (14) A third configuration example of the system program of the present invention causes a computer to receive, from a means for executing a game program for a multiplayer game, an instruction to prohibit the sharing of game images for all game members of a belonging game group, and to prohibit the display of game images based on game image data corresponding to each of the game members on a display based on the game member information of the belonging game group, and to receive, from a means for executing a game program for a multiplayer game, an instruction to specify user identification data for which the sharing of game images is to be prohibited, and to prohibit the display of game images based on game image data corresponding to the specified user identification data for which the sharing of game images is to be prohibited on a display.
[0033] According to the above configuration (14), the system program is provided with a function for prohibiting the sharing of game images, which facilitates the development of game programs.
[0034] (15) In any one of the configurations (12) to (14) above, the computer further receives, from the means for executing the game program of the multiplayer game, an instruction to prohibit all other users from sharing game images, and executes a process to prohibit all other users from displaying game images based on game image data on the display.
[0035] According to the above configuration (15), the system program is provided with a function for prohibiting the sharing of game images, which facilitates the development of game programs.
[0036] (16) A first configuration example of the game program of the present invention causes a computer to execute game processing for a multiplayer game and processing for instructing a system program to prohibit all game members of a game group to which the multiplayer game belongs from sharing game images.
[0037] According to the above feature (16), the setting for prohibiting the sharing of game images is set by the game program, so that the prohibition of sharing can be set appropriately according to the content of the game.
[0038] (17) A second configuration example of the game program of the present invention causes a computer to execute game processing for a multiplayer game, and processing for identifying game members who are to be prohibited from sharing game images in accordance with predetermined rules based on game member information of a game group to which the multiplayer game belongs, and instructing a system program to prohibit the identified game members from sharing game images in accordance with predetermined rules.
[0039] According to the above configuration (17), the setting for prohibiting the sharing of game images is set by the game program, so that the prohibition of sharing can be set appropriately according to the content of the game.
[0040] (18) A third configuration example of the game program of the present invention causes a computer to execute game processing for a multiplayer game and processing for instructing a system program to prohibit game members of an opposing team in a team competitive game from sharing game images, among a game group to which the multiplayer game belongs.
[0041] According to the above configuration (18), the setting for prohibiting the sharing of game images is set by the game program, so that the prohibition of sharing can be set appropriately according to the content of the game.
[0042] The present invention may also be embodied in the form of an information processing method. [Effects of the Invention]
[0043] According to the present invention, game images can be appropriately shared in a communication group. [Brief explanation of the drawings]
[0044] [Figure 1] FIG. 1 is a diagram illustrating an example of an information processing system according to an embodiment of the present invention. [Figure 2] FIG. 1 is a block diagram showing an example of a hardware configuration of an information processing device 1. [Figure 3] A block diagram showing an example of the configuration of servers 101a and 101b. [Figure 4] FIG. 1 is a functional block diagram showing an example of functions possessed by a host device and a guest device when a shared game is played. [Figure 5] FIG. 1 shows an example in which eight information processing devices 1a to 1h belonging to a communication group and an information processing device 1z not belonging to the communication group are operating in each game mode. [Figure 6] FIG. 10 is a diagram showing an example of an image displayed on a display 15a of an information processing device 1a serving as a first host device; [Figure 7] FIG. 10 is a diagram showing an example of an image displayed on a display 15b of an information processing device 1b serving as a first guest device. [Figure 8] FIG. 10 is a diagram showing an example of an image displayed on a display 15c of an information processing device 1c serving as a second host device. [Figure 9] FIG. 10 is a diagram showing an example of an image displayed on a display 15d of an information processing device 1d serving as a second guest device. [Figure 10] FIG. 10 is a diagram showing an example of an image displayed on the display 15a when the information processing device 1a becomes a host device and invites other information processing devices 1 to participate in a shared game. [Figure 11] FIG. 10 is a diagram showing an example of an image in which a first dedicated button menu image BMa is displayed on the display 15b when the information processing device 1b receives an invitation to a shared game from another information processing device 1a and participates in the shared game in response to an operation of the dedicated button 3; [Figure 12] FIG. 10 is a diagram showing an example of a second dedicated button menu image BMb displayed when the dedicated button 3 of the information processing device 1b is operated. [Figure 13]FIG. 10 is a diagram showing an example of a third dedicated button menu image BMc displayed when the dedicated button 3 of the information processing device 1b is operated. [Figure 14] FIG. 1 is a diagram illustrating an example of a system for sharing games using internet communication. [Figure 15] FIG. 1 illustrates an example of a system for sharing games using local wireless communication. [Figure 16] FIG. 10 is a diagram showing an example of a data area set in the DRAM 13; [Figure 17] 1 is a flowchart showing an example of the first half of the main body function processing executed by the information processing device 1. [Figure 18] 10 is a flowchart showing an example of the second half of the main body function processing executed by the information processing device 1. [Figure 19] 1 is a flowchart showing an example of a dedicated button menu process executed by the information processing device 1. [Figure 20] 1 is a flowchart showing an example of the first half of a communication function process executed by the information processing device 1. [Figure 21] 10 is a flowchart showing an example of the second half of the communication function process executed by the information processing device 1. [Figure 22] 1 is a flowchart showing an example of a game program process executed by the information processing device 1. [Figure 23] A subroutine showing a detailed example of the game sharing mode processing performed in step S144 in FIG. 22. [Figure 24] A subroutine showing a detailed example of the image sharing setting process performed in step S146 in FIG. 22 and step S151 in FIG. 23. [Figure 25] 10 is a flowchart showing an example of a game sharing function process for a host executed by the information processing device 1. [Figure 26] 10 is a flowchart showing an example of a game sharing function process for a guest executed by the information processing device 1. [Figure 27] FIG. 10 shows an example of data and programs stored in a storage unit 104a of a server 101a. [Figure 28]A flowchart showing an example of processing executed by the server 101a [Figure 29] FIG. 10 shows an example of data and programs stored in a storage unit 104b of a server 101b. [Figure 30] A flowchart showing an example of processing executed by the server 101b DETAILED DESCRIPTION OF THE INVENTION
[0045] An information processing system used in one example of this embodiment will be described below. The information processing system is a system configured by a plurality of information processing devices 1 communicating with each other. Fig. 1 is a diagram showing an example of an information processing system, and is a diagram showing an overview configured by a plurality of information processing devices 1 performing internet communication via a network 100.
[0046] As shown in FIG. 1, the information processing system includes multiple information processing devices 1 and multiple servers. For example, the information processing system is configured by information processing devices 1a to 1c and servers 101a and 101b being communicatively connected via a network 100. The information processing devices 1a to 1c are configured to be connectable to the network 100 via Internet communication using wireless or wired communication, and form a client-server system with the servers 101a and / or 101b. Note that communication between the information processing devices 1a to 1c may be communication that does not involve the Internet or communication that does not involve a server, and may be, for example, peer-to-peer communication via local wireless communication. For example, the information processing devices 1a to 1c are each capable of executing a predetermined application (e.g., a game application or a system application). Furthermore, by executing the predetermined application, the information processing devices 1a to 1c establish a connection with the servers 101a and / or 101b via the network 100, thereby enabling communication with the servers 101a and / or 101b. The number of information processing devices 1 included in the information processing system may be any number. The information processing devices 1 may be any type of information processing device, whether stationary or portable, such as a game console, smartphone, tablet terminal, or personal computer. The information processing devices 1 may be of different types or the same type.
[0047] The information processing device 1 may be identified by the unique ID of the information processing device itself, or may be identified via a user account such as a network account. In the latter case, for example, "user A's information processing device" is the information processing device 1 currently logged in using user A's user account. For example, when communicating with "user A's information processing device," the communication destination is specified using the unique ID of "the information processing device currently logged in using user A's user account."
[0048] In this embodiment, the information processing system has a communication function, and can form a communication group with a plurality of information processing devices 1. In this embodiment, the information processing devices 1 in the communication group can share audio by mutually communicating audio data, or can share images by mutually communicating game images or camera images, thereby enabling communication by audio or images (or both) among the information processing devices 1.
[0049] In this embodiment, the information processing system has a game sharing function. A shared game (a game using the game sharing function) is a game played among multiple information processing devices 1, in which an information processing device 1 that does not have a game program can participate as a guest. Of the multiple information processing devices 1, at least one that has a game program operates as a host device, and the other information processing devices 1 operate as guest devices. The host device executes game processing for the shared game and generates a game image that indicates the result of the game processing. The generated game image is transmitted from the host device to the guest device. The guest device receives the game image from the host device and displays it on its own display. The guest device transmits operation data that indicates a user's operation on its own device to the host device, and the host device executes the game processing based on its own operation data and the operation data transmitted from the guest device. As described above, in this embodiment, game processing is possible by sharing a game among multiple information processing devices 1. Note that game sharing is a function that shares a game with an information processing device 1 that does not have a game program (for example, allowing them to temporarily play together). The sharing of game images and the like using the communication function described above is a function that allows game images and the like displayed on one's own display to be displayed on the display of another information processing device 1. In this embodiment, the same term "sharing" is used, but the specific meaning is different.
[0050] In the present embodiment, communication between the information processing devices 1 can be performed via Internet communication or via local wireless communication. In the former case, Internet communication between the information processing devices 1 can be performed via the other devices (e.g., the servers 101a and 101b) described above, or direct Internet communication between the information processing devices 1 can be performed using a predetermined communication method (e.g., PtoP (Peer to Peer) or the like). In the present embodiment, communication between the information processing devices 1 in the communication group is performed via Internet communication. A shared game can be executed selectively using Internet communication (which may be communication via a server or peer to peer communication) and local wireless communication. A shared game using Internet communication can be executed between members of the communication group. On the other hand, a shared game using local wireless communication is executed by direct wireless communication between multiple information processing devices 1 within the communication range of the information processing device 1 using a predetermined communication method (e.g., a method conforming to the Wi-Fi (registered trademark) standard such as IEEE802.11, a wireless communication method using a proprietary protocol, infrared communication, etc.). In this case, the host device broadcasts a call for participants for the shared game, and game processing for the shared game is performed among multiple information processing devices 1 that communicate via local wireless communication. Therefore, when using local wireless communication, game sharing partners are not limited to members of the communication group to which the host device belongs. In this case, using local wireless communication technology, the host device directly receives operation data from each guest device and directly transmits game images to each guest device, thereby performing game sharing via local wireless communication among multiple information processing devices 1. Here, the "local wireless communication" possible with other information processing devices 1 may be ad hoc communication that wirelessly connects the information processing devices 1 directly to each other without going via the Internet.
[0051] 2 is a block diagram showing an example of the hardware configuration of an information processing device 1. In this embodiment, each information processing device 1 has both a function for operating as a host device and a function for operating as a guest device. However, in other embodiments, the information processing device 1 included in the information processing system may have only one of a function for operating as a host device and a function for operating as a guest device. Furthermore, as in this embodiment, in order to function as a host device, it may be necessary to execute a game program.
[0052] As shown in FIG. 2, the information processing device 1 includes a processor 11, a flash memory 12, a DRAM 13, a communication unit 14, a display 15, an audio output unit 16, an audio input unit 17, an imaging unit 18, and an operation unit 19.
[0053] The processor 11 is an information processing unit that executes various types of information processing in the information processing device 1, and is connected to the units 12 to 19. The processor 11 may be composed of, for example, one or more central processing units (CPUs), or may be composed of a system-on-a-chip (SoC) that includes one or more CPUs and one or more graphics processing units (GPUs). The processor 11 executes various types of information processing by executing programs (for example, system programs and game programs) stored in a storage unit (specifically, an internal storage medium such as the flash memory 12, or an external storage medium attached to the information processing device 1).
[0054] The flash memory 12 stores various programs that the processor 11 executes to perform information processing for implementing a communication function or running a game. For example, the flash memory 12 stores a game program PG and a system program PS that is separate from the game program PG. The game program PG may be stored in a storage medium (e.g., a memory card) that is detachably attached to the information processing device 1. In this embodiment, the flash memory 12 stores multiple different game programs (three game programs PG1 to PG3 in FIG. 2), and the processor 11 executes each game program PG to play different games. The system program PS is pre-installed in the information processing device 1. That is, in this embodiment, the program that implements the communication function and the program that implements the game sharing function are pre-installed in the information processing device 1. The system program PS includes a program PSa that implements a continuous running function that is always running when the information processing device 1 is powered on, a program PSb that implements a communication function between multiple information processing devices 1, and a program PSc that implements a shared game function that allows multiple information processing devices 1 to share and play a game. Furthermore, the program PSc that realizes the shared game function includes a host program PSh that is executed when the information processing device 1 operates as a host device, and a guest program PSg that is executed when the information processing device 1 operates as a guest device. The host program PSh and the guest program PSg are programs for the game sharing function that each game program PG uses via an API (Application Programming Interface).
[0055] The DRAM 13 is an example of a storage unit in the information processing device 1 and is a memory used to temporarily store various data used in information processing. The DRAM 13 stores various data used in information processing for executing communication functions and games (e.g., processing for realizing communication functions such as voice chat and image sharing, game processing for progressing the game, and processing for transmitting and receiving data with other information processing devices 1 or the server 101a or 101b to realize the communication functions and games) or generated by the information processing. Note that the voice chat in this embodiment can be performed while sharing video information (so-called video chat), and voice chat includes such modes. Furthermore, the communication function may be voice chat, video chat, text chat for exchanging text data, or a function for sharing game images that one is playing with other users, or may be capable of one or more of these.
[0056] The communication unit 14 can perform Internet communication as a first communication mode and can perform local wireless communication as a second communication mode. The game sharing function can use either communication mode, and the user can select either one for the same game.
[0057] The display 15 displays an image based on the display control processing of the processor 11. Note that in other embodiments, the information processing device 1 may not be provided with the display 15, and may be configured to display an image on a display device that can communicate with the information processing device 1.
[0058] The audio output unit 16 generates audio (for example, game sounds or the user's voice in voice chat) based on audio data output from the processor 11. For example, the audio output unit 16 includes a codec circuit and a speaker. Note that in other embodiments, the information processing device 1 may not include at least a part of the audio output unit 16, and may be configured to output audio from a speaker connected to the information processing device 1.
[0059] The audio input unit 17 collects sounds around the information processing device 1 and outputs audio data of the sounds to the processor 11. For example, the audio input unit 17 includes a codec circuit and a microphone, and outputs audio data based on the voice of the user of the information processing device 1 collected by the microphone to the processor 11. Note that in other embodiments, the information processing device 1 may not include at least a part of the audio input unit 17, and may be configured to collect audio using a microphone connected to the information processing device 1.
[0060] The imaging unit 18 is configured with a camera that captures an image of the real world around the information processing device 1 and outputs the captured image data to the processor 11. Note that in other embodiments, the information processing device 1 may not be equipped with the imaging unit 18, and may be configured to capture images using a camera connected to the information processing device 1.
[0061] The operation unit 19 detects operations performed by a user on the information processing device 1 and outputs operation data indicating the detected operations. The operation unit 19 may include, for example, operation members such as an analog stick or a button, or sensors such as a gyro sensor or an acceleration sensor. The operation unit 19 may also include a home button 2 and a dedicated button 3 (see FIG. 1 ) separate from the home button 2. The home button 2 is an operation member used to display a menu screen. The dedicated button 3 is an operation button for a communication function. When the dedicated button 3 is operated, a user interface for the communication function is displayed, as described below. In this embodiment, only the user interface for the communication function is displayed. Note that the game sharing function when using Internet communication is performed among members of a communication group, so the user interface for the game sharing function when using Internet communication may be considered a type of user interface for the communication function. In this embodiment, when the dedicated button 3 is operated, a user interface for the game sharing function is also displayed depending on the situation. Note that the operation unit 19 may be an operation unit integrated with the information processing device 1, a detachable operation unit, or a separate operation unit.
[0062] As shown in FIG. 3 , the servers 101a and 101b each include a communication unit 102, a control unit 103, and a storage unit 104. The communication unit 102 communicates with the information processing device 1, etc. via the network 100 by transmitting and receiving communication packets. As an example, the control unit 103 of the server 101a performs processes such as managing a communication function performed with the information processing device 1, establishing a communication link with the information processing device 1, etc. via the communication unit 102, and performing data transport control and route selection on the network 100. The control unit 103 of the server 101b also performs processes such as managing a game sharing function performed with the information processing device 1, establishing a communication link with the information processing device 1, etc. via the communication unit 102, and performing data transport control and route selection on the network 100. The storage unit 104 stores programs executed by the control unit 103, various data required for the above processes, various data required for communication with the information processing device 1, etc. In addition, in the case of a system that requires a predetermined login process to send and receive data or participate in a game using the network 100, an authentication process for determining whether the user attempting to log in is a legitimate user may be performed in the servers 101a and / or 101b. Furthermore, the servers 101a and 101b may each be configured from a single server machine or multiple server machines.
[0063] Below, an overview of the operations performed by each information processing device 1 when a game is executed in the information processing system will be described with reference to Figures 4 and 5. In the description using Figure 4, an example will be described in which information processing device 1a operates as a host device when playing a shared game, and information processing device 1b operates as a guest device when playing the shared game.
[0064] FIG. 4 is a functional block diagram showing an example of functions possessed by the host device and the guest device when a shared game is played.
[0065] The information processing device 1a, which serves as the host device, includes a game module 20 that is implemented by executing a game program PG and a system module 30 that is implemented by executing a system program PS. The game module 20 implements different functions depending on the game mode being executed by the information processing device 1a. For example, the information processing device 1a has functions corresponding to a standalone mode in which the information processing device 1a performs game processing alone, a communication multiplay mode in which multiple information processing devices 1 communicate with each other and each execute the same game program to perform game processing, and a game sharing mode in which the host device executes a game program, performs game processing, displays game images on its own device, and transmits them to the guest device while communicating with the host device and the guest device. Specifically, the information processing device 1a includes units 21a-23a for functions corresponding to the standalone mode, units 21t-23t for functions corresponding to the communication multiplay mode, and units 21s-24s for functions corresponding to the game sharing mode.
[0066] The game processing unit 21a executes game processing for progressing the game in standalone mode (for example, processing for controlling each object in the game space and updating parameters indicating the game situation). The game processing unit 21a acquires operation data of its own device, and outputs game parameters indicating the results of game processing based on the operation data (for example, parameters indicating the game situation, such as the position and state of each object in the game space) to the image generation unit 22a.
[0067] The image generation unit 22a generates a game image by outputting it to the frame buffer 23a based on the game parameters output from the game processing unit 21a. Data of the generated game image is output to the audio and image data transmission / reception unit 32 included in the system module 30 in order to share the image to be displayed on the information processing device 1 with other information processing devices 1. The game image drawn in the frame buffer 23a by the image generation unit 22a is output to the display 15 of the device. The game module 20 (for example, an audio generation unit) generates game sounds to accompany the game images and outputs the generated game sound data to the audio output unit 16 of the device.
[0068] The game processing unit 21t executes game processing for progressing the game in the communication multiplay mode. The game processing unit 21t acquires operation data of its own device and operation data of other information processing devices 1 communicating in the communication multiplay, and outputs game parameters indicating the results of game processing based on the operation data to the image generation unit 22t.
[0069] The image generation unit 22t generates a game image by outputting it to the frame buffer 23t based on the game parameters output from the game processing unit 21t. Data of the generated game image is output to the audio and image data transmission / reception unit 32 included in the system module 30 in order to share the image to be displayed on the information processing device 1 with other information processing devices 1. The game image drawn in the frame buffer 23t by the image generation unit 22t is output to the display 15 of the device. The game module 20 (for example, an audio generation unit) generates game sounds to accompany the game images and outputs the generated game sound data to the audio output unit 16 of the device.
[0070] The game processing unit 21s executes game processing for progressing the game in the game sharing mode. The game processing unit 21s acquires operation data of its own device (host device) and operation data of the guest device output from the guest operation data receiving unit 34 included in the game sharing function (for host) 30h of the system module 30, and outputs game parameters indicating the results of game processing based on the operation data to the image generating unit 22s.
[0071] The image generation unit 22s generates a game image by outputting it to the frame buffer 23s based on the game parameters output from the game processing unit 21s. The game image for the host device and the game image for the guest device may be the same or different. If the game images for the host device and the guest device are different, the image generation unit 22s generates each game image and draws them in different memory areas. On the other hand, if the game images for the host device and the guest device are the same, the image generation unit 22s only needs to generate one game image. Furthermore, if there are multiple guest devices, the game image may be the same for each guest device or may be different for each guest device.
[0072] The image generation unit 22s generates a game image for the host device from among the game images and outputs it to the frame buffer 23s. The game image written in the frame buffer 23s is displayed on the display 15 of the information processing device 1a. Furthermore, the guest image data transmission unit 35 included in the game sharing function (for host) 30h of the system module 30 acquires data of the game image for the guest device from among the generated game images (if the game image for the host device and the game image for the guest device are the same, the game image written in the frame buffer 23s is acquired) and transmits it to the guest device. Furthermore, the audio and image data transmission / reception unit 32 included in the system module 30 acquires data of the generated game image for the host device (for the user's device) and transmits it to members of the communication group in order to share images to be displayed on the user's device with other information processing devices 1 (image sharing). Note that these processes by the guest image data transmission unit 35 and the audio and image data transmission / reception unit 32 may be repeated at predetermined intervals in response to an instruction from the game module 20, may be performed each time a new game image is drawn in the frame buffer, or may be performed in response to an instruction from the game module 20. The game module 20 (for example, an audio generation unit) generates game sounds to accompany the game images, and outputs the generated game sound data to the guest image data transmission unit 35. The game module 20 (for example, an audio generation unit) also generates game sounds to accompany the game images, and outputs the generated game sound data to the audio output unit 16 of the player's device.
[0073] The inviting unit 24s is a processing unit for making invitations to a shared game, and selects another information processing device 1 to be invited to a shared game played by the information processing device 1 as the host device from among the members of the communication group to which the information processing device 1 belongs. Then, the inviting unit 24s outputs a request to invite the selected information processing device 1 to play the shared game to an invitation data sending unit 36 included in the game sharing function (for host) 30h. Furthermore, the inviting unit 24s sets the registered guest device as an opponent in the shared game based on a reply from the invitee.
[0074] The system module 30 includes a communication function 30c, a game sharing function (for host) 30h, a game sharing function (for guest) 30g, and a constantly running function 30j. The communication function 30c is provided with units 31 to 33 as a function for creating a communication group with other information processing devices 1 and performing voice chat, video chat, and sharing game images within the communication group. The game sharing function (for host) 30h is provided with units 34 to 36 in order to function as a host device when a shared game is played among a plurality of information processing devices 1. The game sharing function (for guest) 30g is provided with units 37 and 38 in order to function as a guest device when a shared game is played among a plurality of information processing devices 1. The constantly running function 30j is provided with units 39 to 42 as a function for performing main body function processing.
[0075] The audio and image data transmitting / receiving unit 32 is a module for communication functions, and receives game images for image sharing from other information processing devices 1 via the server 101a, and transmits game image data acquired from the frame buffer of the game module 20 of the information processing device 1 to the other information processing devices 1 via the server 101a. Specifically, the audio and image data transmitting / receiving unit 32 receives game images from other information processing devices 1 that are members of a communication group to which the information processing device 1 belongs, and outputs the images to the frame buffer 33 to display them on the display 15 (ISb, ISc, and ISd in FIG. 6). The audio and image data transmitting / receiving unit 32 also reduces the resolution of the image data of the information processing device 1 generated by the image generating unit 22a, and then outputs the image data to the frame buffer 33 (ISa in FIG. 6) and transmits it to the server 101a. The transmitted image data is then transmitted by the server 101a to the other information processing devices 1 that belong to the communication group. Members of the communication group are identified by the group management unit 105. The audio & image data transmitting / receiving unit 32 transmits image data for image sharing of its own device to the server 101a in association with a communication group ID indicating the communication group to which its own device belongs and an ID indicating its own device. The audio & image data transmitting / receiving unit 32 also receives from the server 101a game image data for image sharing transmitted from other information processing devices 1 belonging to the communication group, together with the ID indicating the transmission source device, and outputs the data to the frame buffer 33 to display it on the display 15.
[0076] The audio and image data transmitting / receiving unit 32 acquires user voice data collected by the audio input unit 17 of its own device. The audio and image data transmitting / receiving unit 32 then transmits the acquired voice data to other information processing devices 1 belonging to the communication group via the group management unit 105 included in the server 101a. The audio and image data transmitting / receiving unit 32 associates the voice data of its own device to be transmitted with a communication group ID indicating the communication group to which its own device belongs and an ID indicating its own device, and transmits the associated voice data to the server 101a. The audio and image data transmitting / receiving unit 32 also receives voice data transmitted from other information processing devices 1 belonging to the communication group, together with an ID indicating the transmission source device, via the group management unit 105 included in the server 101a. The system module 30 (for example, an audio generating unit) generates audio (user's voice) based on the voice data acquired by the audio and image data transmitting / receiving unit 32, and outputs the generated audio to the audio output unit 16 of its own device.
[0077] The frame buffer 33 draws the image for image sharing output from the audio and image data transmitting / receiving unit 32, i.e., the image for image sharing of the information processing device 1 of the own device and the other information processing devices 1 belonging to the communication group. The drawn image is output to the display 15 of the own device.
[0078] In order to execute a shared game in which the guest device is the host device, the guest operation data receiving unit 34 receives operation data transmitted from the information processing device 1 that has become the guest device of the shared game via the game management unit 106 of the server 101b or by peer-to-peer communication from the guest device. The guest operation data receiving unit 34 then outputs the operation data to the game processing unit 21s of the game module 20 of the guest device together with the ID of the information processing device that performed the operation, which was transmitted in association with the received operation data of the guest device.
[0079] The guest image data transmission unit 35 transmits game image data, in which a game session ID is associated with a game image (for the guest device) drawn by the image generation unit 22s of the game module 20 of the guest device, in the frame buffer 23s (or the memory area for guest images), via the game management unit 106 of the server 101b or by peer-to-peer communication, to the guest device. When transmitting the game image data to the server 101b, the guest image data transmission unit 35 also transmits game sound data related to the game image to be transmitted, in association with the game session ID.
[0080] When the invitation data sending unit 36 receives an instruction from the game module 20 to send invitation data for a shared game, the invitation data sending unit 36 sends the invitation data together with information indicating the shared game to the game management unit 106 of the server 101b.
[0081] When the information processing device 1a operates as a host device, the game sharing function (for guest) 30g in the system module 30 of the information processing device 1a does not function, and is activated when the information processing device 1a plays a shared game as a guest device. When the game sharing function (for guest) 30g in the information processing device 1a is activated, it realizes a function similar to the game sharing function (for guest) 50g in the system module 50 of the information processing device 1b operating as a guest device, which will be described later. Note that when the information processing device 1a is configured to have only the function for operating as a host device, the information processing device 1a does not need to have the game sharing function (for guest) 30g.
[0082] The dedicated button menu processing unit 42 is activated when the dedicated button 3 is operated (more specifically, immediately after the operation). Specifically, if the communication function 30c is not activated, the dedicated button menu processing unit 42 initiates a sequence for activating the communication function 30c. For example, the dedicated button menu processing unit 42 provides a user interface for the communication function. This user interface is called a dedicated button menu. The dedicated button menu processing unit 42 displays various states of the communication function in response to user operations and performs various settings. Specifically, the dedicated button menu processing unit 42 provides a user interface for forming the communication group, a user interface for displaying various states of the communication function, and a user interface for setting various functions. The dedicated button menu may include a user interface for receiving an invitation from the host device for a game sharing function via Internet communication. This user interface may display the invitation and allow the user to select whether to accept the invitation, or may transition to a screen for making such a selection.
[0083] Furthermore, other functions of the constant activation function 30j in the system module 30 are basically the same as those of the constant activation function 50j in the system module 50, which will be described later, and therefore detailed description thereof will be omitted here.
[0084] The information processing device 1b, which serves as a guest device, includes a system module 50 that is realized by executing a system program PS. The system module 50 includes a communication function 50c, a game sharing function (for host) 50h, a game sharing function (for guest) 50g, and a constantly running function 50j. The communication function 50c includes units 51 to 53 as a function for creating a communication group with other information processing devices 1 and performing voice chat and sharing game images within the communication group. The game sharing function (for guest) 50g includes units 57 and 58 in order to function as a guest device when a shared game is played among multiple information processing devices 1. The game sharing function (for host) 50h includes units 54 to 56 in order to function as a host device when a shared game is played among multiple information processing devices 1. The constantly running function 50j includes units 59 to 62 as a function for performing main body function processing.
[0085] The communication function 50c in the system module 50 has basically the same function as the communication function 30c in the system module 30. Note that the game images for image sharing that the audio and image data transmitting / receiving unit 52 transmits to other information processing devices that are other members of the same communication group are not game images generated by the image generating unit of the own device, but game images generated by the host device and received via the server 101b.
[0086] The guest operation data transmission unit 57 acquires operation data of the host device. Then, the guest operation data transmission unit 57 associates the acquired operation data of the host device with the game session ID of the shared game being played, and transmits the operation data to the host device via the game management unit 106 of the server 101b or by peer-to-peer communication.
[0087] The frame buffer drawing unit 58 draws, in the frame buffer, the game image for the guest device transmitted from the guest image data transmission unit 35 in the system module 30 of the host device. The drawn game image is output to the display 15 of the host device (IPb in FIG. 7, which will be described later). The game image is also drawn in the frame buffer 53 after being processed to reduce its resolution (ISb in FIG. 7, which will be described later). The system module 50 (e.g., an audio generation unit) generates game sound based on the game sound data transmitted in association with the game image, and outputs the generated game sound from the audio output unit 16 of the host device.
[0088] The invitation receiving unit 59 receives invitation data to a shared game sent from the host device via the server 101b or by peer-to-peer communication.
[0089] Based on the received invitation data, the invitation information display unit 60 outputs and draws invitation information indicating the details of the invitation from the host device to the frame buffer of its own device, and prompts the user of its own device to participate in the shared game to which the user has been invited by the invitation data.
[0090] When an invitation is received from the host device, the participation unit 61 transmits participation data indicating the participation to the host device via the server 101b or by peer-to-peer communication in response to a user operation accepting the participation in the shared game. Furthermore, when the participation unit 61 receives information indicating that its own device has been registered as a guest device, it sets a game session ID indicating the host device registered as an opponent in the shared game and the shared game.
[0091] When the dedicated button 3 is operated, the dedicated button menu processing unit 62 displays a dedicated button menu including a user interface for the communication function and a user interface for the game sharing function.
[0092] When the information processing device 1b operates as a guest device, the game sharing function (for host) 50h in the system module 50 of the information processing device 1b does not function, and is activated when a shared game is played with the information processing device 1b as the host device. When the game sharing function (for host) 50h in the information processing device 1b is activated, it realizes a function similar to the game sharing function (for host) 30h in the system module 30 of the information processing device 1a operating as the host device described above. Note that when the information processing device 1b is configured to have only the function for operating as a guest device, the information processing device 1b does not need to have the game sharing function (for host) 50h.
[0093] The server 101a includes a group management unit 105 that manages communication groups and transmits and receives data to and from each information processing device 1. The group management unit 105 assigns a different group ID to each communication group and manages the members (IDs of the information processing devices 1) belonging to the communication group based on member registration-related information, such as information indicating an invitation or information indicating acceptance, transmitted from each information processing device 1. When the group management unit 105 receives data from a member belonging to a communication group, it performs processing according to the received data based on the member information of the communication group. When the group management unit 105 receives image data for image sharing, it transfers the image data to other members based on the communication group ID associated with the image data. When the group management unit 105 receives voice data, it transfers the voice data to other members based on the communication group ID associated with the voice data.
[0094] The server 101b includes a game management unit 106 that manages the host device and guest devices (e.g., the IDs of the host device and guest device) that play the shared game, and transmits and receives data (specifically, game image data and operation data) to and from each information processing device 1. When the game management unit 106 receives an instruction from the information processing device 1 to send an invitation to another information processing device, the game management unit 106 associates information indicating the shared game to which the invitation is made with an ID indicating the inviter, and transmits the invitation data to the invitee. The game management unit 106 then manages each pair of the host device and the guest device together with a game session ID based on the participation data received from the invitee. When the game management unit 106 receives operation data from a guest device, it transfers the received operation data to the corresponding host device. When the game management unit 106 receives game image data from a host device, it transfers the received game image data to the corresponding guest device. The server 101b also manages an image sharing prohibition flag (referred to as an "opponent prohibition flag") for game partners, which will be described later. In addition, the shared game can also be executed by sending and receiving game images and operation data via peer-to-peer communication between information processing devices 1 without using server 101b, and the peer-to-peer communication may be via Internet communication or local wireless communication.
[0095] In addition, the communication channel or communication network used to send and receive data for the communication function between server 101a and each information processing device 1 and the communication channel or communication network used to send and receive data for the game sharing function between server 101b and each information processing device 1 may be the same communication channel or communication network, or may be different communication channels or communication networks.
[0096] In this way, the functions of the guest device are realized by the processor executing the system program, without executing a game program. Therefore, an information processing device 1 functioning as a guest device can have a game sharing function and a communication function for guests without installing a specific game program. Furthermore, an information processing device 1 functioning as a host device does not need to implement the basic parts of the game sharing function for the host in a specific game program, eliminating the need to create these functions for each game program, thereby improving the efficiency of game program development. Furthermore, since the information processing device 1 can operate as a guest device without installing a specific game program, in order to play a shared game using the host device and the guest device, it is only necessary to install a game program on the host device, and it is not necessary to install a game program on the guest device, thereby improving user convenience.
[0097] Furthermore, in this embodiment, one information processing device 1 has a basic part of the game sharing function for the host and a game sharing function for the guest, by means of a system program. Therefore, by installing the system program, the information processing device 1 can operate as either a host device or a guest device. Therefore, when playing a game based on a game program stored in the information processing device 1, the information processing device 1 operated by a user can be the host device, and information processing devices 1 operated by other users can be the guest devices, allowing multiple people to easily play the game. Furthermore, when playing a game based on a game program stored in an information processing device 1 operated by other users, the information processing device 1 operated by the other users can be the host device, and information processing devices 1 operated by the user can be the guest devices, allowing multiple people to easily play the game. This further improves user convenience.
[0098] Furthermore, it is arbitrary which functions of the information processing device 1 are realized by executing a game program and which functions are realized by executing a system program. For example, in another embodiment, the guest operation data receiving unit in the host device may be realized by a game module by executing a game program, and all of the game sharing functions for the host may be realized by executing a game program.
[0099] Furthermore, information about members of a communication group and information about the combination of host device and guest device playing a shared game may be managed on the information processing device 1 side. That is, at least one of the functions of the group management unit 105 in the server 101a and the function of the game management unit 106 in the server 101b may be provided as a function in at least one of the multiple information processing devices 1. Furthermore, information managed by the server 101a or 101b may also be held in the information processing device 1.
[0100] Furthermore, the number of servers controlling data communication between the plurality of information processing devices 1 may be one or three or more. When one server controls data communication between the plurality of information processing devices 1, the server may have both the functions of the group management unit 105 and the function of the game management unit 106. In this case, the communication channel for performing data communication with the one server may be different from or the same as the communication channel for using the function of the group management unit 105 and the communication channel for using the function of the game management unit 106.
[0101] As described above, game images are shared within a communication group, but in this embodiment, the display of game images of other members in the communication group can be restricted. For example, in this embodiment, at least one game member belonging to a game group playing a multiplayer game in the above-described game sharing mode or communication multiplay mode is prohibited from displaying game images on the display of that game member. In other words, game images are displayed on the displays of all communication members belonging to the communication group, except for the prohibited game member.
[0102] As described above, image-shared game images are displayed on the display of a user's own device and are shared with other users' devices, thereby enabling communication within a communication group through image sharing. For example, in the case of a multiplayer game in a communication multiplay mode, the image-shared game images are images generated and displayed by each of the information processing devices 1 playing the game, and are images for playing the multiplayer game on each of the information processing devices 1. In addition, in the case of a multiplayer game in a game sharing mode, the image-shared game images are images generated by the host device and displayed on the user's own device, and images generated by the host device for the guest device are acquired and displayed by the guest device, and are images for playing the multiplayer game on each of the host device and guest device.
[0103] In this embodiment, users who are prohibited from sharing images are registered, and game images of the registered users are not displayed on the display even if they are received. For example, the users who are prohibited from sharing images are set as follows:
[0104] As a first example, among the communication members belonging to a communication group, a user who is an opponent in a multiplayer game being played by the communication member is registered as image sharing prohibited (opponent prohibited). As an example, when a card game or mahjong game is being played by multiple members as a multiplayer game, game images displaying the hand of cards and tiles in the game are registered as image sharing prohibited for other members (members who are members of the same communication group and who are playing the same multiplayer game). As a result, the game images of the opponent playing the game are not displayed because they are registered as image sharing prohibited, so the game images displaying the hand of cards and tiles cannot be seen by the opponent. Note that the game images are shared and displayed for communication members who are not playing the multiplayer game together. If there is a user who is participating in the multiplayer game as a spectator rather than as a player, the game images may be shared and displayed for that user.
[0105] As a second example, users who are prohibited from sharing images are individually designated and registered as prohibited from sharing images (individual prohibition). For example, when a team battle game is being played as a multiplayer game, members of the opposing team are registered as prohibited from sharing images. As a result, game images of each member of the friendly team are shared and displayed with each other, but game images of each member of the opposing team are not displayed because they are registered as prohibited from sharing images. This allows the game status within the team to be shared, while the opposing team cannot see the game status.
[0106] As a third example, all users are registered as prohibited from sharing images (total prohibition). For example, if a puzzle-solving game is being played, all other users are registered as prohibited from sharing images. This prevents images from being shared with other members of the communication group to which the player of the puzzle-solving game belongs, and therefore prevents the answers to the puzzle from being revealed to other users.
[0107] As a fourth example, game images are shared with all other users, including other members playing a multiplayer game (uniform permission). In this case, images of the game being played by the member playing the multiplayer game are shared and displayed to other members of the communication group to which the member playing the multiplayer game belongs, using the function described above using the functional block diagram.
[0108] As shown in FIG. 4, in order to restrict the image sharing described above, the communication function 30c of the information processing device 1a, which is the host device of the shared game, includes an image sharing restriction unit 31. The image sharing restriction unit 31 manages all prohibition flags and prohibited user IDs set in the host device. Furthermore, the communication function 50c of the information processing device 1b, which is the guest device of the shared game, includes an image sharing restriction unit 51. The image sharing restriction unit 51 manages all prohibition flags and prohibited user IDs set in the guest device. Furthermore, the server 101b manages the other party prohibition flag in association with the user ID of the host device currently executing the game sharing function.
[0109] In this embodiment, the game program specifies a mode of prohibiting image sharing (for example, any of the modes of the first to fourth examples). For example, when game program A that prohibits image sharing in the mode of the first example is executed by the game processing unit 21s in game sharing mode, the game processing unit 21s commands the game sharing function (for host) 30h via the API to prohibit image sharing for all users who are game sharing partners, based on the identification information of users (game members of the game group to which the game processing unit 21s belongs) who are playing game program A together in game sharing mode (first command to prohibit image sharing for game sharing partners). In this case, the game program does not need to specify the IDs of individual users to be prohibited. Then, when the game sharing function (for host) 30h receives the first command from the game module 20, it requests the server 101b to turn on the partner prohibition flag. The partner prohibition flag functions as a "game partner image sharing prohibition flag," and when the partner prohibition flag is on, image sharing is uniformly prohibited for all members currently playing a multiplayer game together. The partner prohibition flag (game partner image sharing prohibition flag) managed by the server 101b is set to on in association with the user ID of the host device that requested the flag to be set to on, and can be referenced by the information processing devices 1 of all game members of the shared game (for example, the host device and guest devices of the shared game). Note that the partner prohibition flag may be managed by each of the information processing devices 1 of all game members of the shared game (all client devices executing game processing using the game sharing function).
[0110] The host device of the shared game refers to a flag corresponding to the user ID of the host device among the partner prohibition flags managed by the server 101b, and if the flag is set to on, writes the user ID of the game partner in the currently running shared game to the prohibited user ID managed by the image sharing restriction unit 31 of the communication function 30c. Then, when the audio and image data transmitting / receiving unit 32 of the communication function 30c receives game images for image sharing from another information processing device 1 via the server 101a, the audio and image data transmitting / receiving unit 32 does not output the game images associated with the prohibited user ID managed by the image sharing restriction unit 31 to the frame buffer 33. Therefore, the game images for image sharing corresponding to the prohibited user ID managed by the image sharing restriction unit 31 are not displayed on the display 15 of the host device. In this way, game images for image sharing for which image sharing is prohibited are treated as hidden in the host device that receives the game images and are not displayed on the display 15 of the host device. In other words, the device sending the game image for image sharing will send the game image via server 101a regardless of the setting prohibiting image sharing, but the host device receiving the game image will display the game image on display 15 unless the received game image for image sharing is set to prohibit image sharing.
[0111] Furthermore, when the guest device of the shared game references a partner prohibition flag managed by the server 101b that corresponds to the user ID of the host device of the shared game group in which the guest device participates and the flag is set to on, the guest device writes the user ID of the game partner in the shared game to the prohibited user ID managed by the image sharing restriction unit 51 of the communication function 50c. When the guest device receives game images for image sharing from another information processing device 1 via the server 101a, the audio and image data transmitting / receiving unit 52 of the communication function 50c does not output the game images associated with the prohibited user ID managed by the image sharing restriction unit 51 to the frame buffer 53. Therefore, the game images for image sharing that correspond to the prohibited user ID managed by the image sharing restriction unit 51 are not displayed on the display 15 of the guest device. In this way, the game images for image sharing that are prohibited from image sharing are treated as hidden on the guest device that receives the game images and are not displayed on the display 15 of the guest device. In other words, the device sending the game image for image sharing will send the game image via server 101a regardless of the setting prohibiting image sharing, but the guest device receiving the game image will display the game image on display 15 unless the received game image for image sharing is set to prohibit image sharing.
[0112] In the description of prohibiting image sharing in the manner of the first example, an example was used in which game program A is played in game sharing mode. However, the process of prohibiting image sharing may also be performed when game program A is executed by the game processing unit 21t in communication multiplay mode. That is, the user ID of an opponent in a multiplayer game is registered as a prohibited user ID, and when a game image (for image sharing) associated with that user ID is received, it is not displayed on the display. The opponent prohibition flag may be managed by each of the information processing devices 1 of all game members playing the game in communication multiplay mode, and the flag may be set when game matching is performed. Even when image sharing is prohibited in the manner of the first example in communication multiplay mode, the information processing device 1 on the sending side of the game image for image sharing transmits the game image regardless of the setting for prohibiting image sharing. However, the information processing device 1 on the receiving side of the game image displays the game image on the display 15 unless the received game image for image sharing is set to prohibit image sharing.
[0113] For example, when game program B that prohibits image sharing in the manner of the second example described above is executed by the game processing unit 21s in game sharing mode, the game processing unit 21s designates users who are to be prohibited from sharing images based on identification information of users (game members of the game group to which the game program B belongs) who are sharing and playing game program B, and issues a command to the game sharing function (for host) 30h via the API (a second command for prohibiting image sharing for individual users). As one example, when a team competitive game is played by game program B in game sharing mode, the user IDs of users belonging to the opposing team (e.g., the enemy team) are designated as users who are to be prohibited from sharing images. As another example, when there are users who are participating as spectators in the game played by game program B rather than as players, the user IDs of users other than the users participating as spectators (i.e., users participating as players) are designated as users who are to be prohibited from sharing images (this prohibits image sharing for players other than spectators).
[0114] Then, when the game sharing function (for host) 30h receives the second command from the game module 20, it writes the specified user ID to be prohibited from image sharing to the prohibited user IDs managed by the image sharing restriction unit 31 of the communication function 30c. Then, when the audio and image data transmitting / receiving unit 32 of the communication function 30c receives a game image for image sharing from another information processing device 1 via the server 101a, it does not output the game image associated with the prohibited user ID managed by the image sharing restriction unit 31 to the frame buffer 33. Even when image sharing is prohibited in the manner of the second example, the device that sends the game image for image sharing transmits the game image via the server 101a regardless of the setting to prohibit image sharing, but the host device that receives the game image displays the game image on the display 15 unless the received game image for image sharing is set to prohibit image sharing.
[0115] Furthermore, when game program B is being executed in game sharing mode, the game sharing function (for host) 30h transmits to each guest device, via the server 101b, the user IDs of users who are to be prohibited from sharing images (e.g., the IDs of users on the opposing team for each guest). Upon receiving the user IDs of users who are to be prohibited from sharing images, the guest devices write the user IDs into the prohibited user IDs managed by the image sharing restriction unit 51 of the communication function 50c. When the audio and image data transmitting / receiving unit 52 of the communication function 50c receives a game image for image sharing from another information processing device 1 via the server 101a, if the prohibited user IDs managed by the image sharing restriction unit 51 include a user ID indicating the transmission source device associated with the game image, the audio and image data transmitting / receiving unit 52 does not output the game image to the frame buffer 53. Even when image sharing is prohibited in the manner described in the second example above, the device sending the game image for image sharing will transmit the game image via server 101a regardless of the setting prohibiting image sharing, but the guest device receiving the game image will display the game image on display 15 unless the received game image for image sharing is set to prohibit image sharing.
[0116] In the description of the second example above, the example in which the game program B is played in the game sharing mode is used, but the process of prohibiting image sharing may also be performed in the same way when the game program B is executed in the game processing unit 21t in the communication multiplay mode. That is, in each information processing device, the user IDs of members of the opposing team are registered as prohibited user IDs.
[0117] For example, when the game processing unit 21s is executing the game program C that prohibits image sharing in the manner described in the third example, the game processing unit 21s commands the game sharing function (for host) 30h via the API to prohibit all users from sharing images (third command for all prohibitions). Then, when the game sharing function (for host) 30h receives the third command from the game module 20, it sets the all prohibition flag managed by the image sharing restriction unit 31 of the communication function 30c to on. Then, when the all prohibition flag managed by the image sharing restriction unit 31 is set to on, the audio and image data transmission / reception unit 32 of the communication function 30c does not transmit image data for image sharing of its own device to other devices. In other words, when image sharing is prohibited in the manner described in the third example, the host device that transmits the game image for image sharing does not transmit the game image to other devices. Therefore, the device that receives the game image for image sharing cannot display the game image on the display 15 because the game image itself is not transmitted from the transmitting host device.
[0118] Furthermore, when game program C is running in game sharing mode, the game sharing function (for host) 30h transmits a notification to each guest device indicating that all image sharing is prohibited. Upon receiving the notification, the guest device sets the all-prohibition flag managed by the image sharing restriction unit 51 of the communication function 50c to ON. Then, when the all-prohibition flag managed by the image sharing restriction unit 51 is ON, the audio and image data transmission / reception unit 52 of the communication function 50c does not transmit the image data for image sharing of its own device to other devices. In other words, when image sharing is prohibited in the manner described in the third example, the guest device that transmits the game image for image sharing does not transmit the game image to other devices. Therefore, the device that receives the game image for image sharing cannot display the game image on its display 15 because the game image itself is not transmitted from the transmitting guest device.
[0119] In the explanation of prohibiting image sharing in the manner of the third example above, an example was used in which game program C is played in game sharing mode, but the process of prohibiting image sharing by turning on the all prohibition flag may also be performed when game program C is executed in the game processing unit 21t in standalone mode or communication multiplayer mode.
[0120] Furthermore, the above-mentioned command issued from the game processing unit via the API may be executed to perform various settings, or instructions for the various settings may be issued and the various settings may be performed by other programs. Furthermore, in the above example, the process of prohibiting image sharing itself is performed by executing a system program, but the process of prohibiting image sharing itself may also be performed by executing a game program.
[0121] In addition, the game images shared in this embodiment include not only game images in a multiplayer game shared among multiple information processing devices 1, but also game images in a multiplayer game in which each information processing device 1 executes a game program, game images in which a game program is executed on a cloud server and streamed to each information processing device 1 for display, and game images displayed on an information processing device 1 in which a game program is executed in standalone mode. In other embodiments, the images shared in this embodiment may be any images. For example, they may be images obtained by executing any application program on the information processing device 1, or images obtained by generating (including capturing) or setting on the information processing device 1 (for example, captured images, avatar images, icon images, text images, design images, etc.).
[0122] Next, an example of the operation of a plurality of information processing devices belonging to a communication group will be described with reference to Fig. 5. Fig. 5 is a diagram showing an example in which eight information processing devices 1a to 1h belonging to the same communication group and an information processing device 1z not belonging to the communication group are operating in each game mode.
[0123] In Fig. 5, the information processing devices 1a to 1h within the dashed frame belong to the same communication group, and the information processing device 1z outside the dashed frame does not belong to that communication group. Also in Fig. 5, the main functions operating in each information processing device 1 are indicated by hatched blocks. The communication group is constructed by each information processing device running a system program to operate a communication function, so the communication functions are operating in each of the information processing devices 1a to 1h that belong to the same communication group. On the other hand, the communication function of the information processing device 1z that does not belong to a communication group is not activated.
[0124] In this embodiment, it is possible for multiple information processing devices of multiple members belonging to the same communication group to form multiple pairs of host devices and guest devices, and each pair can share a different game program and perform game shared play. Note that the number of members that can belong to the same communication group may be limited (for example, up to 12 people) or may be unlimited. Furthermore, the number of pairs of host devices and guest devices that can be formed within the same communication group and play in the game shared mode, i.e., the number of shared plays, may be limited to two or more within the communication group, or may be unlimited.
[0125] For example, two information processing devices 1a and 1b belonging to the same communication group are playing a shared game based on a first game program in a game sharing mode in which the information processing device 1a is the first host device and the information processing device 1b is the first guest device. At this time, the information processing device 1a functioning as the first host device has a game module implemented by executing the first game program operating in the game sharing mode to perform game processing, and a game sharing function for the host implemented by executing the system program is operating. On the other hand, the information processing device 1b functioning as the first guest device has no game module running, and a game sharing function for the guest implemented by executing the system program is operating.
[0126] Furthermore, two information processing devices 1c and 1d belonging to the same communication group as the information processing devices 1a and 1b are playing a shared game (a game different from the first game program; it may be the same game as the first game program) based on a second game program in a game sharing mode in which the information processing device 1c serves as the second host device and the information processing device 1d serves as the second guest device. At this time, the information processing device 1c, functioning as the second host device, is executing the second game program to implement a game module that operates in the game sharing mode to perform game processing, and a host game sharing function that is implemented by executing a system program is operating. Meanwhile, the information processing device 1d, functioning as the second guest device, has not started up a game module, and is instead operating a guest game sharing function that is implemented by executing a system program.
[0127] As described above, in this embodiment, within one communication group, a game shared between a first host device and a first guest device and another game shared between a second host device and a second guest device can be performed in parallel. In other words, multiple game sharing functions can be activated within a communication group. Furthermore, information processing devices 1 belonging to the communication group can share voice chat and images and invite others to participate in the shared game, making it easy to form a session for playing the shared game. Furthermore, since multiple shared games can be activated within a communication group, various gameplays can be performed while communicating within the communication group, even if only a few members in the communication group own the game program, which is expected to promote communication using games.
[0128] Two information processing devices 1e and 1f belonging to the same communication group are playing a multi-game in a communication multi-play mode by each executing a third game program. At this time, the game modules realized by executing the third game program in each of the information processing devices 1e and 1f are operating in the communication multi-play mode to perform game processing.
[0129] One information processing device 1g belonging to the same communication group is playing a game in stand-alone mode by executing a fourth game program. At this time, the information processing device 1g is performing game processing by operating a game module realized by executing the fourth game program in stand-alone mode.
[0130] Furthermore, information processing device 1h belonging to the same communication group executes a fifth game program to play a multiplayer game in the communication multiplay mode with information processing device 1z not belonging to the same communication group. At this time, the game modules realized by executing the fifth game program in each of information processing devices 1h and 1z operate in the communication multiplay mode to perform game processing. Thus, in this embodiment, a multiplayer game in the communication multiplay mode can be played even with information processing device 1z not belonging to the same communication group.
[0131] In another embodiment, a shared game may be played in the game sharing mode even between information processing devices 1 that do not belong to the same communication group. In this case, the guest device may be an information processing device 1 that belongs to the same communication group, or an information processing device 1 that does not belong to the same communication group.
[0132] Next, examples of images displayed on the display 15 of each information processing device 1 during shared game play will be described with reference to FIGS. 6 to 9. FIG. 6 is a diagram showing an example of an image displayed on the display 15a of the information processing device 1a serving as the first host device. FIG. 7 is a diagram showing an example of an image displayed on the display 15b of the information processing device 1b serving as the first guest device. FIG. 8 is a diagram showing an example of an image displayed on the display 15c of the information processing device 1c serving as the second host device. FIG. 9 is a diagram showing an example of an image displayed on the display 15d of the information processing device 1d serving as the second guest device.
[0133] As explained with reference to Fig. 5, in the examples explained with reference to Figs. 6 to 9, the information processing devices 1a to 1h belong to the same communication group. Then, in a game sharing mode in which the information processing device 1a is the first host device and the information processing device 1b is the first guest device, the information processing devices 1a and 1b are playing a shared game based on a first game program. Note that the prohibition of image sharing on the information processing devices 1a and 1b is set to uniformly permit the game images for image sharing to other users, and image sharing is performed (the fourth example (uniform permission)).
[0134] In this embodiment, in addition to a game image for that device (own device image), game images (shared images) received from other devices are simultaneously displayed on the display 15 of other devices belonging to the same communication group. For example, as shown in FIG. 6, the display 15 of the information processing device 1 is provided with a own device image display area and a shared image display area. The own device image display area is the area occupying the largest area on the display screen of the display 15, and is provided, for example, in the upper part of the display screen, occupying more than half of the area of the display screen. The shared image display area is the area of the display screen of the display 15 excluding the own device image display area, and is provided, for example, in the lower part of the display screen, occupying less than half of the area of the display screen, and game images of multiple information processing devices are displayed (ISa, ISb, ISc, ISd). Note that in this embodiment, the image of the own device is also displayed in the shared image display area (ISa).
[0135] 6, information processing device 1a, acting as a host device, is playing a shared game based on a first game program with information processing device 1b, a guest device, and a game image IPa showing the user of information processing device 1a playing the shared game is displayed in the host device image display area. Specifically, a racing game based on the shared game is being played between information processing device 1a and information processing device 1b by executing the first game program. A game image IPa showing a first player character operated by the user of information processing device 1a running on a race course is displayed as the host screen image of information processing device 1a, and a game image IPb (a game image received from information processing device 1b) showing a second player character operated by the user of information processing device 1b running on the race course is displayed as the screen image of information processing device 1b. A shared game identification indicator indicating that a shared game is being played with the user of information processing device 1b is displayed on game image IPa.
[0136] 7, information processing device 1b displays a game image IPb in its own device image display area, in which the user of information processing device 1b is playing a game. Specifically, in the racing game being played by information processing device 1a executing a first game program, a game image IPb showing a second player character operated by the user of information processing device 1b running on the same race course as the first player character is displayed as the own screen image of information processing device 1b. A shared game identification indicator indicating that a shared game is being played between the user of information processing device 1a and the user of information processing device 1a is displayed on the game image IPb.
[0137] On the other hand, the shared image display area displays images displayed by the devices belonging to the same communication group. As shown in FIG. 6, the shared image display area on the display 15 of the information processing device 1a displays, as shared images, the own-view images of the other information processing devices 1b to 1h belonging to the same communication group. In this embodiment, the own-view image of the own device (information processing device 1a) is also displayed as one of the shared images. In the example shown in FIG. 6, shared images ISa to ISd corresponding to the own-view images of the information processing devices 1a to 1d are displayed in the shared image display area of the information processing device 1a together with the user names of the information processing devices 1a to 1d. As for the shared images of the information processing devices 1e to 1h, when the respective devices are not displaying their own-view images or when the own-view sharing is set to off, only the user names of the respective information processing devices 1e to 1h are displayed in the shared image display area of the information processing device 1a.
[0138] In this way, four or more (four in this embodiment) shared images IS can be simultaneously displayed in the shared image display area on the display 15 of the information processing device 1. This makes it possible to display game images (shared images ISa and ISb) of a first shared game (e.g., a racing game) and game images (shared images ISc and ISd) of a second shared game (e.g., a card game), and members belonging to a communication group can play the game while watching how multiple groups are playing the shared game.
[0139] In this embodiment, a display is made to indicate another information processing device that is currently running a shared game with the information processing device 1a. For example, as shown in FIG. 6, the information processing device 1a is playing a shared game with the information processing device 1b by executing a first game program, and a display is made stating "Playing a shared game with user of information processing device 1b." Also, a shared image ISa of the information processing device 1a and a shared image ISb of the information processing device 1b are displayed, showing the shared game being played. The shared images ISa and ISb may be displayed in a specific display manner that indicates that they are linked to each other, such as by being surrounded by a double-lined frame.
[0140] Furthermore, other shared images that are not linked are displayed in a display mode different from the specific display mode. For example, as shown in FIG. 6, the information processing devices 1c and 1d are playing a shared game by executing a second game program different from that of the information processing devices 1a and 1b, and a shared image ISc of the information processing device 1c and a shared image ISd of the information processing device 1d showing the shared game being played are displayed. Both the shared images ISc and ISd are displayed in a display mode different from the specific display mode. Note that the information processing devices 1c and 1d are set to prohibit image sharing for users who will be opponents in a multiplayer game with the game images for image sharing (the first example (opponent prohibition) described above).
[0141] The number of shared images IS displayed in the shared image display area may be any number, and the shared images IS of all members belonging to the communication group may not be displayed. Furthermore, the shared images IS displayed in the shared image display area may not include a shared image corresponding to the own-view image of the own device (information processing device 1a).
[0142] 7, information processing device 1b displays shared images ISb of information processing device 1b and ISa of information processing device 1a, which show a shared game being played between information processing device 1b and information processing device 1b by executing a first game program. Information processing device 1b also displays shared images ISa and ISb surrounded by double-lined frames, thereby displaying them in a specific display mode that indicates that they are linked to each other. Information processing device 1b also displays shared images ISc and ISd, which show a shared game being played between information processing device 1a and information processing device 1b by executing a second game program different from those of information processing device 1a and information processing device 1b. Shared images ISc and ISd are both displayed in a display mode different from the specific display mode.
[0143] In this way, by displaying each shared image using these display modes, the user of information processing device 1a can easily distinguish the game image displayed on information processing device 1b, which is playing a shared game with the user of information processing device 1a. Furthermore, since the shared image displays the user name of the information processing device displaying the shared image, the user can see how members of the communication group are playing the game, which can promote communication about what games each person is playing.
[0144] 8, the information processing device 1c, acting as the host device, is playing a shared game with the information processing device 1d, a guest device, based on a second game program different from the first game program, and a game image IPc of the user of the information processing device 1c playing the shared game is displayed in the host device image display area. Specifically, a card game is being played between the information processing device 1c and the information processing device 1d by executing the second game program, and a game image IPc showing the hand of cards held by a third player character operated by the user of the information processing device 1c is displayed as the host screen image of the information processing device 1c. A shared game identification indicator indicating that a shared game is being played with the user of the information processing device 1d is displayed on the game image IPc.
[0145] 9, a game image IPd showing the user of information processing device 1d playing a game is displayed in the information processing device 1d's own device image display area. Specifically, in the card game being played by information processing device 1c executing the second game program, a game image IPd showing the hand of cards held by a fourth player character operated by the user of information processing device 1d is displayed as the information processing device 1d's own screen image. A shared game identification indicator indicating that a shared game is being played with the user of information processing device 1c is displayed on the game image IPd.
[0146] In the card game described above, it is conceivable that the game will not be successful if one player shows his / her hand to the other player. In this embodiment, when a game is played in which it is undesirable for the game image of one's own device to be shown to the other player, the other player is set as an object of image sharing prohibition by the image sharing prohibition setting process described above, and a blank image, for example, is set as the other player's shared image so that the game image of one's own device is not displayed as a shared image on the other player's display.
[0147] As shown in FIG. 8, shared images ISa to ISd corresponding to the self-view images of the information processing devices 1a to 1d belonging to the same communication group are displayed in the shared image display area of the information processing device 1c, along with the user names of the information processing devices 1a to 1d. Here, the information processing device 1c is playing a card game as a shared game with the information processing device 1d, and the shared image ISd of the information processing device 1d, the other user in the shared game, is displayed as a blank image because image sharing is prohibited. The shared images ISc and ISd are both displayed surrounded by double-lined frames in a specific display mode indicating that they are linked to each other, and the shared image ISd is a game image of the other user. The information processing devices 1a and 1b are playing a shared game by executing a first game program different from that of the information processing devices 1c and 1d, and image sharing is uniformly permitted, so shared images ISa and ISb showing the shared game being played are displayed. The shared images ISa and ISb are both displayed in a display mode different from the specific display mode.
[0148] 9, the shared image display area of the information processing device 1d also displays shared images ISa to ISd corresponding to the self-view images of the information processing devices 1a to 1d belonging to the same communication group, along with the user names of the information processing devices 1a to 1d. As described above, the information processing device 1d is playing a card game as a shared game with the information processing device 1c, and the shared image ISc of the information processing device 1c, which is the other user, is displayed as a blank image because image sharing is prohibited. The shared images ISc and ISd are both displayed surrounded by double-lined frames in a specific display mode indicating that they are linked to each other, and the shared image ISc is an image of the other user's game. The information processing devices 1a and 1b are playing a shared game different from that of the information processing devices 1c and 1d, and image sharing is uniformly permitted, so shared images ISa and ISb showing the shared game being played are displayed. The shared images ISa and ISb are both displayed in a display mode different from the specific display mode.
[0149] In this way, when a game is being played in which it is not desirable to show game images of the user's device to the game opponent, image sharing is prohibited, and an image that does not reveal the game play status of the game opponent is displayed as the shared image of the game opponent. Therefore, even if the game opponent belongs to the same communication group, the user playing the game can set the shared image of the game opponent to an image that does not interfere with the game play, thereby preventing problems in the game battle. On the other hand, as shown in Figures 6 and 7, even in a game in which it is not desirable to show game images to the game opponent, members of the communication group who are not the parties to the game can see the game status of all users participating in the game through shared images, thereby promoting communication within the communication group.
[0150] Next, an example of an image displayed on the display 15 of each information processing device 1 when inviting another information processing device 1 to participate in a shared game will be described with reference to Fig. 10 and Fig. 11. Fig. 10 is an example of an image displayed on the information processing device 1 serving as the host device, and is a diagram showing an example of an image displayed on the display 15a when the information processing device 1a serves as the host device and invites another information processing device 1 to participate in the shared game. Fig. 11 is an example of an image displayed on the information processing device 1 serving as the guest device, and is a diagram showing an example of an image displayed on the display 15b when the information processing device 1b accepts an invitation to the shared game from another information processing device 1a and participates in the shared game in response to operation of the dedicated button 3.
[0151] In this embodiment, the game program executed by the processor 11 of the information processing device 1 executes the device in each game mode (standalone mode, online multiplay mode, game sharing mode), and includes code that causes the processor to execute the host function of the system program when executing in the game sharing mode. For example, as illustrated in the top diagram of FIG. 10, execution of game processing begins in a game mode selected from a menu such as a top menu displayed by the game program, and in the game sharing mode, the host function is activated, making it possible to invite a guest device to join a shared game. In this way, execution of the game program executes the host function in the game sharing mode.
[0152] For example, in the top diagram of FIG. 10 , when a game program is executed on the information processing device 1a, a menu image GMa is displayed on the display 15a as a self-view image, serving as a user interface for prompting the user of the information processing device 1a to select a game mode. The menu image GMa displays options for game modes that can be provided by the game program being executed by the information processing device 1a. As an example, the menu image GMa displays a menu IM1 for starting a game in standalone mode, a menu IM2 for starting a game in communication multiplay mode, a menu IM3 for starting a game in a game sharing mode via Internet communication, and a menu IM4 for starting a game in a game sharing mode via local wireless communication. When the user of the information processing device 1a selects from the options displayed on the menu image GMa, game processing in the selected game mode is started. In the following description, an example is used in which the user of the information processing device 1a selects to start a game in a game sharing mode via Internet communication.
[0153] When menu IM3 is selected in the above selection operation, a game sharing mode using Internet communication in which the information processing device 1a serves as the host device is activated, and a game sharing function 30h for the host is activated in the system module 30. At this time, the server 101b is notified that the game sharing mode using Internet communication has been activated, a session ID for the shared game is assigned, and the information processing device 1a is registered as a member and serves as the host device.
[0154] In the second diagram of FIG. 10 , a member selection image MSa showing options for selecting members to play a shared game with the user's device is displayed on the display 15a of the information processing device 1a. For example, in this embodiment, the names of each member of the communication group to which the user's device belongs (user names of each information processing device 1) are acquired from the server 101a, and the member names are displayed as options. In this embodiment, the options include only members of the communication group to which the user's device belongs. Therefore, game sharing partners via Internet communication are limited to members of the communication group to which the user's device belongs. Then, when the user of the information processing device 1a performs an operation to select at least one of the options, an invitation to the shared game is sent to the information processing device 1 corresponding to the option via the server 101b. As a first example, the members displayed as the options may be all members of the communication group excluding the user. As a second example, the members displayed as the options may be limited to logged-in members of the communication group excluding the user. As a third example, the members displayed as options may include members who belong to other communication groups and members who do not belong to any communication group (members who have not activated the communication function). Furthermore, the members displayed as options may be limited to registered friend members. Shared play via internet communication may be performed with other users who are not in front of the user, but in this embodiment, shared play is performed among members of the communication group to which the user belongs, so that shared play can be performed while communicating with users who are not in front of the user using the communication function.
[0155] 10, after inviting other members to a shared game, a notification image IMa is displayed on the display 15a of the information processing device 1a to notify that the information processing device 1a is waiting for members to join, in order to notify them that it is waiting for a member to contact it to join in response to the invitation. The server 101b transmits invitation data to the information processing device 1 that selected to send the invitation as described above, and upon receiving participation data from the information processing device 1 indicating that it will participate in response to the invitation data, performs processing to register the information processing device 1 as a member as a guest device. Then, when the host device and guest device for the shared game have been determined, the server 101b transmits to the information processing device 1a information indicating the determination, as well as a game session ID and the like indicating the shared game to be played between the host device and guest device.
[0156] In the bottom diagram of FIG. 10, a shared game is started on the display 15a of the information processing device 1a, with the information processing device 1b, which has responded with participation data in response to the shared game invitation from the information processing device 1a, as a guest device, and a game image IPa of the information processing device 1a for the shared game is displayed as a self-view image. A shared game identification display indicating that the shared game is being played with the user of the information processing device 1b is displayed on the game image IPa. The self-view image is also displayed as a shared image ISa in the shared image display area of the display 15a. Note that the shared game illustrated in FIG. 10 is a game that should not be shown to the other user of the information processing device 1a, so the image sharing prohibition setting is set to prohibit image sharing of the other user, and the shared image ISb of the guest device in the shared game is displayed as a blank image showing only the user name of the information processing device 1b.
[0157] As described above, in this embodiment, the game sharing function can be activated as a host device in the game menu displayed by the game program. Furthermore, in this embodiment, when a game sharing mode using Internet communication is selected, members belonging to the user's own communication group are displayed as options for selecting a partner to invite to play the shared game. Therefore, the game menu of the game program provides a guide for activating the game sharing function as a host device, making it easy for the user playing the game to understand. Furthermore, since members belonging to the user's own communication group can be invited to play the shared game in multiplayer, the user can play the shared game while communicating with them. Note that users not belonging to the user's communication group (e.g., registered friend users, logged-in users among registered friend users, users of other information processing devices 1 capable of short-range wireless communication, etc.) may also be displayed as options for selecting a partner to invite to play the shared game, or only members belonging to the user's own communication group may be displayed as options.
[0158] Meanwhile, the processor 11 of the information processing device 1 is realized by the constant startup function of the system module 50 as a function of receiving an invitation to a shared game from another information processing device 1. For an invitation to a shared game using Internet communication among the invitations to a shared game, a dedicated button menu process is realized as a function of accepting participation in the invitation to a shared game received from another information processing device 1. For example, even while the information processing device 1 is executing a game program in any game mode, it can temporarily save the game being executed by operating the dedicated button 3 and display a dedicated button menu that allows the user to confirm that an invitation to a shared game (Internet communication) has arrived from another information processing device 1.
[0159] For example, in the top diagram of FIG. 11 , a game program in any game mode is executed on the information processing device 1b, and a game image IPb produced by the game program is displayed as a self-view image. A shared game invitation notification N, indicating that the information processing device 1b has received an invitation to a shared game (Internet communication) from another information processing device 1 via the server 101b, is displayed on the display 15b of the information processing device 1b. Here, in the example of the shared game invitation notification N shown in the top diagram of FIG. 11 , information indicating that the user of the information processing device 1b has been invited to a shared game (Internet communication) is displayed, along with information suggesting that the invitation can be viewed by operating the dedicated button 3 (see FIG. 1 ), guiding the user to operate the dedicated button 3. The shared game invitation notification N is displayed together with an image of the game currently being executed, thereby informing the user who is currently playing the game that an invitation has been received. Furthermore, a display guiding the user to operate the dedicated button 3 is also displayed, making it easy to understand how to accept the invitation.
[0160] 11, when the user of the information processing device 1b presses the dedicated button 3 (more specifically, immediately after pressing the dedicated button 3), a first dedicated button menu image BMa is displayed on the display 15b of the information processing device 1b, superimposed on the game image IPb. The first dedicated button menu image BMa illustrated in the second diagram of FIG. 11 is displayed when the user operates the dedicated button 3 while the information processing device 1 is operating the communication function and has been invited to a shared game (Internet communication) by another information processing device 1. For example, the first dedicated button menu image BMa displays a user interface related to the invitation to the shared game (Internet communication) in addition to images and user interfaces related to the communication function. As an example, shared images IS for each member belonging to the same communication group are displayed as images related to the communication function in the first dedicated button menu image BMa. Furthermore, an exit button BM1, a camera button BM2, a microphone button BM3, an image share button BM4, and the like are displayed as user interfaces related to the communication function in the first dedicated button menu image BMa. The exit button BM1 is a menu for issuing a user instruction to exit the currently participating communication group and stop the operating communication function. The camera button BM2 is a setting menu for issuing a user instruction to turn on / off the camera (imaging unit 18 shown in FIG. 2) used in the communication function. The microphone button BM3 is a setting menu for issuing a user instruction to turn on / off the microphone (audio input unit 17 shown in FIG. 2) used in the communication function. The image sharing button BM4 is a setting menu for issuing a user instruction to select whether or not to share images of the user's own device in the communication function. In addition, a button BM5 indicating that a user has been invited to game sharing (Internet communication) is displayed as a user interface related to being invited to a shared game in the first dedicated button menu image BMa.
[0161] When the user of the information processing device 1b selects the button BM5 indicating that he or she has been invited to game sharing (Internet communication), a shared game participation menu image BMa1 is displayed on the display 15b of the information processing device 1b superimposed on the game image IPb, as shown in the third diagram in FIG. 11 . The shared game participation menu image BMa1 displays information identifying the user of the information processing device 1a who made the invitation and is an image prompting the user to select whether or not to play the shared game with the inviting user. An invitation acceptance button BM6 is displayed as a user interface to be selected when accepting the invitation. When the user of the information processing device 1b selects the invitation acceptance button BM6, a game sharing mode in which the information processing device 1b becomes a guest device is activated in the information processing device 1b, and a guest game sharing function 50g in the system module 50 is activated. That is, the button BM5 included in the first dedicated button menu image BMa serves as a lead to activate the guest function of the game sharing function (Internet communication). The guest game sharing function 50g then transmits participation data indicating participation in the invited shared game to the server 101b. Then, when the host device and guest device for the shared game have been determined, the server 101b transmits to the information processing device 1b information indicating the determination, as well as a game session ID and the like indicating the shared game to be played between the host device and guest device. Note that the first dedicated button menu image BMa may include a user interface such as a shared game participation menu image BMa1 instead of the button BM5. Even in this embodiment, the first dedicated button menu image BMa may include a lead to activate the guest function of the game sharing function (Internet communication).
[0162] As is clear from the self-view images (game image IPb) in the top, second, and third diagrams of FIG. 11 , in this embodiment, even when an invitation to a shared game is received from another information processing device 1, the game being played is not stopped, and the game continues to be played while the game image is displayed, and a shared game invitation notification N, a first dedicated button menu image BMa, and the like are displayed. Then, when a user operation is performed to instruct participation in the invited shared game, the game being played is stopped, and game transition processing is started. The operation for participating in the invitation can be an operation on a user interface displayed by operating the dedicated button 3. A user interface (BMa1) for accepting the invitation may be provided within the first dedicated button menu image BMa.
[0163] In the bottom diagram of FIG. 11, a shared game in which the information processing device 1a is the host device is started on the display 15b of the information processing device 1b, and a game image IPb of the information processing device 1b in the shared game is displayed as a self-view image. A shared game identification display indicating that the shared game is being played with the user of the information processing device 1a is displayed on the game image IPb. The self-view image is also displayed as a shared image ISb in the shared image display area of the display 15b. Note that the shared game illustrated in FIG. 11 is a game that is not desirable for the user of the information processing device 1b to see as an opponent in the game, and therefore the image sharing prohibition setting is set to prohibit image sharing of the opponent, and the shared image ISa of the host device in the shared game is displayed as a blank image showing only the user name of the information processing device 1a.
[0164] Note that a captured image or an icon image of each user may be superimposed on the first dedicated button menu image BMa or the shared image IS displayed in the shared image display area. In this case, the captured image or icon image of each user may be prepared in each information processing device 1 and transmitted from each information processing device 1 to the server 101a in addition to the shared image data of the information processing device 1 itself. In this case, the captured image of each user may be captured by the imaging unit 18 provided in the information processing device 1, or captured image data captured in real time may be transmitted to the server 101a in addition to the shared image data of the information processing device itself.
[0165] Next, with reference to Fig. 12 and Fig. 13, other display modes that are displayed when the dedicated button 3 of the information processing device 1 is operated (more specifically, immediately after the dedicated button 3 is pressed) will be described. Fig. 12 is a diagram showing an example of a second dedicated button menu image BMb that is displayed when the dedicated button 3 of the information processing device 1b is operated (more specifically, immediately after the dedicated button 3 is pressed). Fig. 13 is a diagram showing an example of a third dedicated button menu image BMc that is displayed when the dedicated button 3 of the information processing device 1b is operated (more specifically, immediately after the dedicated button 3 is pressed).
[0166] When the dedicated button 3 of the information processing device 1 in this embodiment is operated, a dedicated button menu image BM including a user interface for the communication function is displayed. The dedicated button menu image BM also includes a user interface for the game sharing function (Internet communication) (e.g., a user interface for responding to a shared game invitation from the host device). For example, as described above, when both the game sharing function and the communication function are operating in the information processing device 1, a first dedicated button menu image BMa (see the second diagram in FIG. 11 ) including user interfaces for both the game sharing function and the communication function is displayed. On the other hand, as shown in FIG. 12 , when the communication function is operating in the information processing device 1 and no operation related to the game sharing function, such as an invitation for a shared game from the host device (Internet communication), is being performed, a second dedicated button menu image BMb including a user interface for the communication function is displayed. Note that when the dedicated button 3 is operated, a user interface for the game sharing function via local wireless communication (an interface that displays hosts inviting players to play a shared game via local wireless communication and allows a player to select and join) may be provided.
[0167] 12, when a game program in any game mode is executed on information processing device 1b, a game image IPb produced by the game program is displayed as a self-view image on display 15b of information processing device 1b. Furthermore, information processing device 1b is in a state where the communication function is active, and shared images IS of each member belonging to the same communication group are displayed in a shared image display area on display 15b.
[0168] 12, when the user of the information processing device 1b operates the dedicated button 3 in this state, a second dedicated button menu image BMb is displayed superimposed on the game image IPb. The second dedicated button menu image BMb displays images related to the communication function and a user interface for the communication function.
[0169] 13, when a game program in any game mode is executed on the information processing device 1b, a game image IPb produced by the game program is displayed as a self-view image on the display 15b of the information processing device 1b. Note that the communication function of the information processing device 1b is not activated, and images related to the communication function, such as the shared image IS described above, are not displayed on the display 15b.
[0170] As shown in the lower diagram of FIG. 13, when the user of the information processing device 1b operates the dedicated button 3 in this state, a third dedicated button menu image BMc is displayed superimposed on the game image IPb. The third dedicated button menu image BMc displays a user interface for activating a communication function. As an example, the third dedicated button menu image BMc displays member selection images BM7 to BM11 that show options for selecting members to form a communication group with the user's own device. For example, in this embodiment, member candidates (user names of each information processing device 1) with which the user of the information processing device 1b can form a communication group are acquired from the server 101a, and the member candidates are displayed as options. Then, when the user of the information processing device 1b performs an operation to select at least one of the options, invitation data inviting the user of the information processing device 1 corresponding to the option to join the communication group is transmitted via the server 101a. Then, by receiving acceptance data indicating acceptance of the participation from the other information processing device 1 that has received the invitation data, a communication group is formed between the user of the information processing device 1b and the user of the other information processing device 1, and the members of the communication group are managed by the server 101a. Thus, in this embodiment, when the communication function is not activated, the activation sequence of the communication function is started in response to the operation of the dedicated button 3. Note that the activation sequence of the communication function described above is merely an example, and for example, a user interface that allows the user to select their own user account may be displayed at the beginning of the activation sequence.
[0171] In this manner, by operating (pressing) the dedicated button 3 provided on the information processing device 1, if the communication function is not currently running, the activation sequence for the communication function is immediately launched. This allows the communication function to be quickly activated through the easy-to-understand operation of operating the dedicated button 3, and promotes the use of the communication function. Furthermore, if the communication function is already running when the dedicated button 3 is operated, a user interface for setting the communication function is displayed instead of starting the activation sequence. This allows the same dedicated button 3 to provide an easy-to-understand user interface related to the communication function. Furthermore, in this embodiment, only the user interface related to the communication function is displayed when the dedicated button 3 is operated. This clarifies the meaning of the dedicated button 3, thereby promoting the use of the communication function. Note that the game sharing function of internet communication disclosed herein is a function performed between members of a communication group and is one of the communication function-related functions. In this embodiment, when an invitation to the game sharing function is made, information about the function is included in the user interface. Furthermore, operating the dedicated button 3 also provides a path to activate the game sharing function of internet communication. In other words, functions and information of other applications performed between members of a communication group may also be included in the user interface displayed by pressing the dedicated button 3 as communication function-related functions. This simplifies and promotes use of other functions related to the communication function. The activation path for the game sharing function is provided when the dedicated button 3 is operated only when an invitation for the game sharing function is received, so activation can be appropriately guided. The dedicated button 3 provided on the information processing device 1 can display a dedicated button menu that provides user interfaces for various purposes based on the function activated by the information processing device 1.For example, dedicated button 3 functions as a "button to launch the user interface for the communication function and the user interface for the game sharing function" (first dedicated button menu image BMa), a "button to launch the user interface for the communication function" (second dedicated button menu image BMb), or a "button to launch the communication function" (third dedicated button menu image BMc).
[0172] Next, an example system for sharing a game using Internet communication and an example system for sharing a game using local wireless communication will be described with reference to Figures 14 and 15. Figure 14 is a diagram showing an example system for sharing a game using Internet communication, and Figure 15 is a diagram showing an example system for sharing a game using local wireless communication.
[0173] The game sharing function in this embodiment uses either Internet communication or local wireless communication. In the former case, game sharing is performed between members belonging to the above-mentioned communication group. In the latter case, game sharing is performed between users operating information processing devices 1 that are capable of local wireless communication with each other.
[0174] As an example, in a system for sharing a game using Internet communication, a game sharing function is realized by performing Internet communication via a server. As shown in Fig. 14, a plurality of information processing devices 1 are connected via a server 101b so as to be able to communicate over the Internet. In this embodiment, the game sharing function using Internet communication can be performed among communication members belonging to the same communication group, and in the example of Fig. 14, a plurality of information processing devices 1a to 1d are devices operated respectively by communication members belonging to the same communication group.
[0175] When the game sharing function is used among such multiple information processing devices 1a to 1d, a host device (game sharing host; information processing device 1a) in game sharing mode generates a game image for the shared game. Here, the shared game is a game in which a common game image is displayed on each of the information processing devices 1a to 1d participating in the shared game, and the game sharing host generates one common game image that is displayed on his own device and each of the game sharing guests (information processing devices 1b to 1d). The game sharing host then displays the generated common game image for the shared game on his own device and transmits the game image to a game sharing room of server 101b that manages the game sharing function (for example, game sharing room 1 that manages game members belonging to a game group in the shared game) in order to transmit the game image to each of the game sharing guests.
[0176] The server 101b that receives the game image determines, based on the member information (host) managed for each game sharing room, that the game image will be used in the shared game managed in the game sharing room 1. Then, the server 101b sets destinations (for example, the user ID and IP address of each game sharing guest) for the received game image based on the member information (guests 1 to 3) managed in the game sharing room 1, and distributes and transmits the game image to the respective destinations.
[0177] Each game sharing guest (information processing devices 1b-1d) that receives a game image from the server 101b displays the received game image. In this way, the system for game sharing using Internet communication shown in FIG. 14 realizes a game sharing function that uses a common game image generated by the game sharing host by the server 101b distributing and transmitting the game image to each game sharing guest. In addition, the system for game sharing using Internet communication shown in FIG. 14 is capable of using a communication function, allowing each game member to communicate with each other while playing the shared game.
[0178] The shared game executed in the system may be a game in which different individual game images are displayed on each of the information processing devices 1a to 1d participating in the shared game. In this case, the game sharing host generates individual game images for each device, distinguishes between game sharing guests (e.g., user IDs) who use individual game images in the game sharing host, and transmits the game images for each game sharing guest to the server 101b.
[0179] In another embodiment, a system for sharing a game using Internet communication may use a PtoP (Peer to Peer) communication method to perform direct Internet communication between information processing devices 1. In this case, the common game image and the individual game images generated by the game sharing host are distributed by the game sharing host to each game sharing guest and transmitted to them, respectively.
[0180] As an example, in a system for sharing a game using local wireless communication, the game sharing function is realized by directly communicating local wireless communication between a game sharing host and a game sharing guest. As shown in Fig. 15, multiple information processing devices 1 are connected using local wireless communication. In this embodiment, the game sharing function using local wireless communication does not require the game members to be members who belong to the same communication group, and is realized without using the communication function described above.
[0181] When a game sharing function using local wireless communication is used, a game image for a shared game is generated in a host device (game sharing host; information processing device 1a) in game sharing mode. Here, the shared game is a game in which different individual game images are displayed on each of the information processing devices 1a to 1d participating in the shared game. The game sharing host generates a host game image to be displayed on his / her own device and guest game images 1 to 3 to be displayed on each of the game sharing guests (information processing devices 1b to 1d). The game sharing host then displays the generated host game image on his / her own device and transmits guest game images 1 to 3 to each of the game sharing guests. For example, the game sharing host sets destinations for guest game images 1 to 3 (e.g., the user ID and MAC address of each game sharing guest) based on member information (guests 1 to 3) managed on his / her own device, and distributes and transmits guest game images 1 to 3 to the respective destinations.
[0182] Each of the game sharing guests (information processing devices 1b to 1d) that receive guest game images 1 to 3 from the game sharing host displays the received guest game images. In this way, the system for game sharing using local wireless communication shown in FIG. 15 realizes a game sharing function that uses each individual game image by allocating and transmitting individual game images generated by the game sharing host to the game sharing guests. Also, in the system for game sharing using local wireless communication shown in FIG. 14, because users operating each information processing device 1 are present within a range in which the local wireless communication is possible in the real world (for example, because multiple users actually meet to play), the users can progress through the shared game while communicating directly with each other in the real world.
[0183] The shared game executed in the system may be a game in which a common game image is displayed on each of the information processing devices 1a to 1d participating in the shared game. In this case, the game sharing host may transmit the common game image to each of the game sharing guests.
[0184] Next, an example of a specific process executed by the information processing device 1 will be described with reference to Fig. 16. Fig. 16 is a diagram showing an example of a data area set in the DRAM 13. Note that in addition to the data shown in Fig. 16, the DRAM 13 also stores data used in other processes, but detailed description thereof will be omitted.
[0185] The program storage area of the DRAM 13 stores various programs Pa to be executed by the information processing device 1. In this embodiment, the various programs Pa store the above-mentioned system program PS, game program PG, etc. Note that the various programs Pa may be stored in advance in the flash memory 12, or may be obtained from a storage medium detachable from the information processing device 1 and stored in the DRAM 13, or may be obtained from another device via a network such as the Internet and stored in the DRAM 13. The processor 11 executes the various programs Pa stored in the DRAM 13.
[0186] Furthermore, the data storage area of DRAM 13 stores various data used in processes such as information processing executed in information processing device 1. In the present embodiment, DRAM 13 stores communication data Da, host device operation data Db, other device operation data Dc, host device game image data Dd, other device game image data De, voice data Df, game session data Dg, invitation / recruitment / participation data Dh, execution state save data Di, communication member registration related data Dj, communication group data Dk, host device voice data Dm, other device voice data Dn, host image sharing data Dp, all prohibition flag data Dq, prohibited user ID data Dr, shared image data (host device) Ds, shared image data (other device) Dt, image data Du, and the like.
[0187] The communication data Da indicates data that is appropriately transmitted to other devices (for example, the servers 101a and 101b) and data that is appropriately received from other devices.
[0188] The own device operation data Db is operation data appropriately acquired from the operation unit 19 of the own device. For example, the operation data acquired from the operation unit 19 includes information about inputs (specifically, information about operations) from each input unit (for example, each button, analog stick, touch panel), and the own device operation data Db is appropriately updated using the operation data acquired from each input unit.
[0189] The other device operation data Dc is operation data that the other device appropriately acquires from each input unit of the other device. Note that the operation data appropriately acquired by the other device is appropriately transmitted to the own device via the server 101b and stored in the communication data Da.
[0190] The own-device game image data Dd is image data showing an image of the game being played by the user of the information processing device 1, and is data for display as a own-screen image on the display 15 of the own device. As one example, when game processing is being executed on the own device, the own-device game image data Dd is generated based on the game processing. As another example, when the own device is set as a guest device and is playing a shared game, the own-device game image data Dd is transmitted from the host device via the server 101b.
[0191] The other-device game image data De is image data showing an image of a game being played by a user of another information processing device 1, and is data to be displayed as a self-screen image on the display 15 of the other device. As an example, when the own device is set as the host device and a shared game is being executed, the other-device game image data De is game image data for the guest device that is generated based on game processing being executed on the own device, and is transmitted to the guest device as appropriate via the server 101b.
[0192] The audio data Df is data such as game sounds that are generated in association with game images as a self-screen image on the display 15 of the own device, and is output to the audio output unit 16 of the own device in association with the display of the game image.
[0193] The game session data Dg includes data indicating a game session ID that is assigned when a shared game is played with another device, and includes information on the content of the communication game being played, the devices (e.g., the host device and guest devices) participating in the communication game, and the users. For example, the game session data Dg includes information on game members belonging to a game group playing the communication game, such as the user IDs of the game members, team identification information for players, and participation information for spectators.
[0194] The invitation / recruitment / participation data Dh is data indicating information for inviting a user to a shared game, data indicating information for inviting a user to participate in a shared game, or data indicating information for participating in a shared game.
[0195] The saved execution state data Di is data that saves the state of the game that was being executed when the information processing device 1 transitioned to the game sharing mode.
[0196] The communication member registration related data Dj is information indicating information inviting registration to a communication group, information indicating the source of the invitation, information accepting the invitation to join the communication group, information indicating the source of the acceptance, and the like.
[0197] The communication group data Dk is data indicating a communication group ID that indicates a communication group.
[0198] The own device voice data Dm is user voice data collected by the voice input unit 17 of the own device and is transmitted to other devices belonging to the communication group as appropriate. The other device voice data Dn is voice data of each user collected by the voice input unit 17 of other devices belonging to the communication group. The other device voice data Dn is transmitted to the own device as appropriate via the server 101a and stored in the communication data Da.
[0199] The self-image sharing data Dp is data indicating whether or not the game image of the own device is permitted to be displayed as a shared image on other devices that are members of the communication group.
[0200] The all prohibition flag data Dq indicates an all prohibition flag that is set to ON when the image sharing prohibition setting is set to all prohibition. When this all prohibition flag is ON, the process of transmitting the game image of the own device as a shared image is not performed, and the game image is not shared with other devices.
[0201] The prohibited user ID data Dr indicates the user ID of a user who is prohibited from sharing images based on the image sharing prohibition setting. If a game image of this user ID is transmitted as a shared image, the image will not be displayed on the display of the user's own device.
[0202] The shared image data (own device) Ds is data representing a shared image displayed in the shared image display area of the own device (e.g., ISa in FIG. 5) corresponding to the own-view image of the own device, and is appropriately generated by lowering the resolution of the own-view image. The shared image data (other device) Dt is data representing a shared image of another device displayed in the shared image display area of the own device (e.g., ISb, ISc, ISd in FIG. 5), and is data accompanied by user information (e.g., a user ID) indicating the user of the shared image. For example, the shared image data (other device) Dt may be a game image and user ID of another device playing a game in standalone mode, a game image and user ID of another device playing a game in online multiplay mode, a game image and user ID of another device playing a game as a host device in game sharing mode, or a game image and user ID of another device playing a game as a guest device in game sharing mode, and is acquired via server 101a.
[0203] The image data Du is data for displaying game images (for example, an image of a player character, an image of a virtual object, an image of a field in a virtual space, a background image, etc.) on the display 15 of the player's device.
[0204] Next, a detailed example of main body function processing, which is an example of information processing in this embodiment, will be described with reference to Figs. 17 and 18. Fig. 17 is a flowchart showing an example of the first half of the main body function processing executed by information processing device 1. Fig. 18 is a flowchart showing an example of the second half of the main body function processing executed by information processing device 1. In this embodiment, the series of processes shown in Figs. 17 and 18 are processes that are always running while information processing device 1 is running, and are performed by processor 11 executing a system program included in various programs Pa. The main body function processing shown in Figs. 17 and 18 can be started at any timing, but as an example, they are started when information processing device 1 is started.
[0205] 17, processor 11 refers to its own device operation data Db and determines whether or not the dedicated button 3 of its own device is being operated (step S61). If the dedicated button 3 is being operated, processor 11 proceeds to step S62. On the other hand, if the dedicated button 3 is not being operated, processor 11 proceeds to step S63.
[0206] In step S62, the processor 11 starts the dedicated button menu process (see FIG. 19), and proceeds to step S63.
[0207] In step S63, processor 11 refers to communication data Da or invitation / recruitment / participation data Dh to determine whether or not invitation data to participate in a shared game using Internet communication has been received from another device via server 101b. If processor 11 has received invitation data using Internet communication, it proceeds to step S64. On the other hand, if processor 11 has not received invitation data using Internet communication, it proceeds to step S65.
[0208] In step S64, processor 11 controls display 15 of its own device to display a message indicating that an invitation to participate in a shared game using Internet communication has been received from another device (for example, shared game invitation notification N in the top diagram of Figure 11), and then proceeds to step S65.
[0209] In step S65, processor 11 refers to communication data Da or communication member registration related data Dj to determine whether or not solicitation data inviting users of other information processing devices 1 to register as members of a communication group has been received via server 101a. If solicitation data has been received, processor 11 proceeds to step S66. On the other hand, if solicitation data has not been received, processor 11 proceeds to step S69 (see FIG. 18).
[0210] In step S66, processor 11 refers to the own device operation data Db and determines whether or not the user of the own device has performed an operation to consent to being registered as a member of the communication group. If the user of the own device has performed an operation to consent to being registered as a member of the communication group, processor 11 proceeds to step S67. On the other hand, if the user of the own device has not performed an operation to consent to being registered as a member of the communication group, processor 11 proceeds to step S69 (see FIG. 18).
[0211] In step S67, the processor 11 transmits consent data approving registration as a member of the communication group to the server 101a, and proceeds to the next step. For example, the processor 11 stores information indicating that the user of the own device consents to registration as a member of the communication group and consent data indicating the source of the solicitation in the communication member registration related data Dj, and transmits the consent data to the server 101a.
[0212] Next, processor 11 activates the communication function of its own device (step S68), and proceeds to step S69 (see FIG. 18).
[0213] 18, processor 11, with reference to the own device operation data Db, determines whether an operation to activate a guest game sharing function of the own device using local wireless communication has been performed (step S69). The operation to activate the guest game sharing function using local wireless communication is a predetermined operation performed using a user interface provided on a home menu screen that is displayed when a game is started or when home button 2 is operated, for example. Note that in this embodiment, the operation to activate the guest game sharing function using local wireless communication is not included in the user interface provided when dedicated button 3 is operated. Then, if an operation to activate a guest game sharing function using local wireless communication has been performed, processor 11 proceeds to step S70. On the other hand, if an operation to activate a guest game sharing function using local wireless communication has not been performed, processor 11 proceeds to step S76.
[0214] In step S70, processor 11 receives game sharing invitation data broadcast from a host device present in the vicinity of the own device (for example, within a range in which the own device can perform local wireless communication), and proceeds to the next step.
[0215] Next, processor 11 displays a list of options, including the name of the host device and the game name of the shared game included in the broadcast data received in step S70, on display 15 of the host device (step S71), and proceeds to the next step. Note that, in the list display, if there is a guest device that has already agreed to participate as a guest, information about that guest device may also be displayed.
[0216] Next, processor 11 refers to the own device operation data Db and determines whether an operation to select an application destination (a destination to participate in the shared game) from the list displayed in step S71 has been performed (step S72). If an operation to select from the list has been performed, processor 11 proceeds to step S73. On the other hand, if an operation to select from the list has not been performed, processor 11 proceeds to step S76.
[0217] In step S73, processor 11 performs a process of transmitting participation data requesting participation in the shared game to the selected host device, and proceeds to the next step. For example, processor 11 performs a process of storing participation data requesting participation in the shared game from the host device selected in step S72 in invitation / recruitment / participation data Dh and transmitting the participation data to the host device.
[0218] In the process of step S73 or step S74, processor 11 may perform a game transition process. For example, if there is a game (including a shared game) currently being executed, processor 11 may perform, as the game transition process, a process of stopping the game and storing the execution state of the game in execution state save data Di. Furthermore, if a game sharing function for a guest is separately activated, processor 11 may perform, as the game transition process, a process of terminating the game sharing function for the guest without saving the execution state of the shared game.
[0219] Next, processor 11 receives data indicating that participation in the shared game has been accepted from the host device that transmitted the participation data (step S74), and proceeds to the next step.
[0220] Next, the processor 11 activates a game sharing function for a guest on the own device using local wireless communication (step S75), and proceeds to the next step.
[0221] Next, processor 11 refers to the own device operation data Db and determines whether or not an operation to end the shared game set on the guest device has been performed on the own device (step S76). If an operation to end the shared game set on the guest device has been performed, processor 11 proceeds to step S77. On the other hand, if an operation to end the shared game set on the guest device has not been performed, processor 11 returns to step S61 (see FIG. 17) and repeats the process.
[0222] In step S77, processor 11 refers to execution state save data Di and determines whether the execution state of the game has been saved in the game transition process in step S73 or step S74 above or step S312 (see FIG. 19) described later. If the execution state of the game has been saved, processor 11 proceeds to step S78. On the other hand, if the execution state of the game has not been saved, processor 11 returns to step S61 (see FIG. 17) above and repeats the process.
[0223] In step S78, processor 11 performs a game restart process, and then returns to step S61 (see FIG. 17) to repeat the process. For example, processor 11 restarts the game stopped in step S73 or step S74 or step S312 (described later) based on the execution state of the game stored in the execution state saved data Di, and also performs a process of deleting the execution state saved data Di.
[0224] Next, a detailed example of dedicated button menu processing, which is an example of information processing in this embodiment, will be described with reference to Fig. 19. Fig. 19 is a flowchart showing an example of dedicated button menu processing executed by the information processing device 1. In this embodiment, the series of processes shown in Fig. 19 are processes that start when the dedicated button 3 in the information processing device 1 is operated, and are performed by the processor 11 executing a system program included in the various programs Pa.
[0225] 19, processor 11 determines whether the communication function of the device itself is operating (step S301). If the communication function is not operating, processor 11 proceeds to step S302. On the other hand, if the communication function is operating, processor 11 proceeds to step S308.
[0226] In step S302, the processor 11 displays the third dedicated button menu image BMc (see the lower diagram in FIG. 13) on the display 15 of the own device, and proceeds to the next step.
[0227] Next, the processor 11 refers to the own device operation data Db and determines whether an operation to invite a user of another information processing device 1 displayed in the third dedicated button menu image BMc as a member of the same communication group has been performed (step S303). If an operation to invite a user of another information processing device 1 has been performed, the processor 11 proceeds to step S304. On the other hand, if an operation to invite a user of another information processing device 1 has not been performed, the processor 11 proceeds to step S305.
[0228] In step S304, the processor 11 transmits solicitation data inviting the user selected in step S303 to become a member of the communication group via the server 101a, and proceeds to step S305. For example, the processor 11 stores information inviting the user of another information processing device 1 to become a member of the communication group and solicitation data indicating the source of the solicitation in the communication member registration related data Dj, and transmits the solicitation data to the server 101a.
[0229] In step S305, the processor 11 determines whether or not it has received, via the server 101a, consent data from another information processing device 1 that has transmitted the invitation data, consenting to registration as a member of the communication group. If the consent data has been received, the processor 11 proceeds to step S306. On the other hand, if the consent data has not been received, the processor 11 ends the processing according to this flowchart.
[0230] In step S306, processor 11 performs member registration processing to transmit data for registering the user of the own device as a member of the communication group to server 101a, and proceeds to the next step. For example, processor 11 stores information for registering the user of the own device as a member of the communication group in communication member registration related data Dj and transmits the data to server 101a. Note that if processing for registering the user of the own device as a member of the communication group is performed in server 101a using the solicitation data transmitted in step S304 above, the member registration processing in step S306 above does not need to be performed. In this case, in server 101a, triggered by transmission of the acceptance data from the information processing device 1 that is the recipient of the solicitation data, processing is performed to register the information processing device 1 that transmitted the solicitation data and the information processing device 1 that transmitted the acceptance data as members of the same communication group.
[0231] Next, the processor 11 activates the communication function of the device itself (step S307), and ends the processing according to this flowchart.
[0232] In addition, when the processor 11 receives update data from the server 101a indicating that the members in the communication group have been updated, the processor 11 may notify the user of the updated content on its own device using images and / or audio.
[0233] On the other hand, if it is determined in step S301 that the communication function is operating, processor 11 refers to communication data Da or invitation / recruitment / participation data Dh to determine whether an invitation to share a game using Internet communication has been received from another device via server 101b (step S308). If an invitation to share a game using Internet communication has been received, processor 11 proceeds to step S309. On the other hand, if an invitation to share a game using Internet communication has not been received, processor 11 proceeds to step S314.
[0234] In step S309, the processor 11 displays the first dedicated button menu image BMa (see the second diagram in FIG. 11) on the display 15 of the own device, and proceeds to the next step.
[0235] Next, processor 11 refers to the own device operation data Db and determines whether or not the user of the own device has performed an operation to view an invitation to share a game using Internet communication (step S310). For example, if a user operation is performed to select button BM5 (see the second diagram in FIG. 11 ), which is displayed on display 15 of the own device and indicates that the user has been invited to share a game, processor 11 makes a positive determination in step S310. If the operation to view the invitation has been performed, processor 11 proceeds to step S311. On the other hand, if the operation to view the invitation has not been performed, processor 11 proceeds to step S315.
[0236] In step S311, processor 11 refers to the own device operation data Db and determines whether an operation to participate in a shared game using Internet communication invited by another device has been performed. If an operation to participate in a shared game using Internet communication has been performed, processor 11 proceeds to step S312. On the other hand, if an operation to participate in a shared game using Internet communication has not been performed, processor 11 ends the processing according to this flowchart.
[0237] In step S312, processor 11 performs a game transition process and proceeds to the next step. For example, if there is a game (including a shared game) being executed, processor 11 performs the game transition process by stopping the game and storing the execution state of the game in execution state save data Di. Furthermore, if a game sharing function for a guest is activated, processor 11 performs the game transition process by terminating the game sharing function for the guest without saving the execution state of the shared game.
[0238] Next, processor 11 activates a game sharing function for guests of the host device using Internet communication, performs processing to transmit participation data to the inviter (step S313), and ends the processing according to the flowchart. For example, processor 11 stores participation data indicating participation in the shared game in the invitation / recruitment / participation data Dh to the inviter who has invited the inviter to participate in the shared game using Internet communication, and performs processing to transmit the participation data to server 101b.
[0239] As described above, in this embodiment, activation of the guest function for game sharing is guided by an invitation from the host device, making the process easy to understand. Furthermore, in this embodiment, activation of the guest function for game sharing with members of a communication group is performed via a user interface provided by a dedicated button for the communication function, making the process easy to understand. Furthermore, in this embodiment, the guest device determines whether to use Internet communication or local wireless communication according to the communication method selected by the host device that joined the group, making it efficient to determine the communication method on the guest device side. Furthermore, when joining via an invitation via Internet communication, activation is performed using Internet communication (step S313 above), and when joining via local wireless communication, activation is performed using local wireless communication (step S75 above), making it easy to determine which communication method to use in the guest function.
[0240] On the other hand, if it is determined in step S308 that an invitation to share a game using Internet communication has not been received, the processor 11 displays the second dedicated button menu image BMb (see the lower diagram in Figure 12) on the display 15 of the device itself, and proceeds to step S315.
[0241] In step S315, processor 11 refers to its own device operation data Db, performs processing according to the user operation, and ends the processing according to the flowchart. For example, in response to a user operation in which one of the user interfaces (e.g., buttons BM1 to BM4 illustrated in the second diagram of FIG. 11 or the bottom diagram of FIG. 12) related to the communication function displayed in the first dedicated button menu image BMa or the second dedicated button menu image BMb displayed on display 15 of its own device is selected, processor 11 performs processing according to the selected user interface.
[0242] As described above, in this embodiment, by operating the dedicated button 3 to display the first dedicated button menu image BMa, it becomes possible to activate the communication function, view and set various information related to the communication function, and perform processing to participate in a shared game (Internet communication) to which an invitee has been invited. Furthermore, in this embodiment, when the information processing device 1 is running, any of the dedicated button menu images can be appropriately displayed by operating the dedicated button 3. Therefore, even when a game program is running, it is possible to receive an invitation to a shared game using Internet communication, change the settings of the communication function, and activate the communication function. Even when playing a shared game with another information processing device 1, it is possible to receive an invitation to another shared game by performing the dedicated button menu processing. Furthermore, by performing an operation to participate in the shared game invitation, it becomes possible to switch to another shared game within one's own communication group and play the game, thereby stimulating communication and game play.
[0243] Next, a detailed example of communication function processing, which is an example of information processing in this embodiment, will be described with reference to Figures 20 and 21. Figure 20 is a flowchart showing an example of the first half of the communication function processing executed by information processing device 1. Figure 21 is a flowchart showing an example of the second half of the communication function processing executed by information processing device 1. In this embodiment, the series of processes shown in Figures 20 and 21 are performed by processor 11 executing a system program included in various programs Pa. Note that the communication function processing shown in Figures 20 and 21 is started in response to the execution of step S68, step S307, and step S140, which will be described later, but may also be started at any other timing.
[0244] 20, the processor 11 turns off the image sharing setting that allows the user's own screen image to be displayed as a shared image on other devices (step S81), and proceeds to the next step. For example, the processor 11 sets the user's own image sharing data Dp to off. When the user's own image sharing data Dp is off, the game image of the user's own device is not displayed on any other device. The user's own image sharing data Dp is used to arbitrarily turn image sharing on / off.
[0245] Next, the processor 11 refers to the own device operation data Db and determines whether or not an operation to switch the setting for sharing the own-view image has been performed (step S84). If an operation to switch the setting for sharing has been performed, the processor 11 proceeds to step S85. On the other hand, if an operation to switch the setting for sharing has not been performed, the processor 11 proceeds to step S88.
[0246] In step S85, processor 11 refers to the self-portrait sharing data Dp, performs a process of switching the self-portrait sharing setting on / off, and proceeds to step S88. For example, if the setting indicated by the self-portrait sharing data Dp is off, processor 11 changes the setting to on and updates the self-portrait sharing data Dp. Also, if the setting indicated by the self-portrait sharing data Dp is on, processor 11 changes the setting to off and updates the self-portrait sharing data Dp.
[0247] In step S88, processor 11 acquires the voice data of the own device and proceeds to the next step. For example, processor 11 acquires the voice data of the user of the own device collected by voice input unit 17 of the own device, and updates the own device voice data Dm.
[0248] Next, the processor 11 transmits the voice data of the own device indicated by the own device voice data Dm to the server 101a (step S89), and proceeds to the next step.
[0249] Next, the processor 11 receives the voice data of the other device and proceeds to the next step S90 (see FIG. 21). For example, the processor 11 receives the voice data of the other device transmitted from the server 101a and updates the other device voice data Dn.
[0250] 21, in step S90, processor 11 refers to all prohibition flag data Dq and determines whether the all prohibition flag is set to on. If the all prohibition flag is set to off, processor 11 proceeds to step S91. On the other hand, if the all prohibition flag is set to on, processor 11 proceeds to step S110. The all prohibition flag is used to prohibit the sharing of game images by the game program regardless of the user's intentions.
[0251] In step S91, the processor 11 refers to the self-portrait sharing data Dp and determines whether the self-portrait sharing setting is set to ON. If the self-portrait sharing setting is set to ON, the processor 11 proceeds to step S92. On the other hand, if the self-portrait sharing setting is set to OFF, the processor 11 proceeds to step S110.
[0252] In step S92, processor 11 references the host device game image data Dd, acquires a game image to be displayed as the host device's own screen image, and proceeds to the next step. More specifically, processor 11 acquires, from a frame buffer or the like, the game image to be drawn in step S156 of Figure 23 of the game program described below.
[0253] Next, processor 11 performs processing to reduce the resolution of the game image acquired in step S92 (step S93), and proceeds to the next step. For example, processor 11 reduces the resolution of the game image indicated by the own device game image data Dd to a predetermined level of fineness to generate a shared image of the own device, and updates the shared image data (own device) Ds using the generated shared image.
[0254] Next, the processor 11 transmits the shared image data of the own device generated in step S93 to the other information processing device 1 via the server 101a together with user information (e.g., user ID) of the own device (step S94), and proceeds to step S95. For example, the processor 11 transmits the shared image data of the own device indicated by the shared image data (own device) Ds together with the user information to the information processing device 1 of the other member via the server 101a.
[0255] On the other hand, if it is determined in step S90 that the all prohibition flag is set to ON, or if it is determined in step S91 that the self-image sharing setting is set to OFF, the processor 11 transmits data indicating a blank image as shared image data of the own device together with user information (e.g., user ID) of the own device to the information processing device 1 of the other member via the server 101a (step S110), and proceeds to step S95. Note that the data indicating the blank image may be image data in which a blank image is displayed, or instruction data to display a blank image. Furthermore, in the process of step S110, it is not necessary to transmit anything as shared image data of the own device to the information processing device 1 of the other member via the server 101a.
[0256] In step S95, the processor 11 receives the shared image data of the other device and corresponding user information (e.g., user ID) from the other information processing device 1 via the server 101a, and proceeds to the next step. For example, the processor 11 updates the shared image data (other device) Dt using the shared image data and user information of the other device received via the server 101a. Note that the user information may be stored in each device when registering the communication group.
[0257] Next, processor 11 controls drawing of the shared image of the own device and displaying it on display 15 (step S96), and proceeds to the next step. Note that in step S96, the program executing the communication function performs processing to instruct the GPU to draw, and the drawing processing itself is performed by the GPU. For example, processor 11 outputs shared image data (own device) Ds to the frame buffer as image data to be displayed as the shared image of the own device in a shared image display area (e.g., the image ISa in FIG. 6) on display 15 of the own device.
[0258] Next, processor 11 controls to draw each shared image of the other devices and display it on display 15 (step S97), and proceeds to the next step. For example, processor 11 outputs to the frame buffer, as image data to be displayed as the shared image of the other devices in the shared image display area, the shared image data (other devices) Dt received and updated from the other information processing devices 1 in step S95, excluding the shared image data corresponding to the user ID registered in the prohibited user ID data Dr.
[0259] Next, processor 11 performs control to draw and display on display 15 user names based on user information corresponding to the shared images of the own device and the other device (step S98), and proceeds to the next step. For example, processor 11 acquires the user name of the own device and the user name based on user information corresponding to the shared image to be displayed in the shared image display area, and outputs the information image indicating the user name to the frame buffer so that the information image is superimposed on a part of the corresponding shared image.
[0260] Next, processor 11 controls to play sounds corresponding to the voice data of the own device and the other device (step S99), and returns to step S84 (see FIG. 20) to repeat the process. For example, processor 11 outputs the own device voice data Dm and the other device voice data Dn from the audio output unit 16 of the own device, and deletes the voice data stored in the own device voice data Dm and the other device voice data Dn, respectively.
[0261] Next, a detailed example of game program processing, which is an example of information processing in this embodiment, will be described with reference to FIGS. 22 to 24. FIG. 22 is a flowchart showing an example of game program processing executed by the information processing device 1. FIG. 23 is a subroutine showing a detailed example of game sharing mode processing performed in step S144 in FIG. 22. FIG. 24 is a subroutine showing a detailed example of image sharing setting processing performed in step S146 in FIG. 22 and step S151 in FIG. 23. In this embodiment, the series of processes shown in FIGS. 22 to 24 are performed by the processor 11 executing a predetermined application program (game program) included in the various programs Pa. Note that the game program processing shown in FIGS. 22 to 24 can be started at any timing.
[0262] 22, processor 11 displays a game mode selection menu on display 15 of the device itself (step S130), and proceeds to the next step. For example, processor 11 displays menu image GMa illustrated using the top diagram of FIG. 10 to prompt the user of the device itself to select a game mode.
[0263] Next, processor 11 refers to the host device operation data Db and determines whether an operation to select a game mode in which to play the shared game has been performed (for example, an operation to select menu IM3 to start a game in a game sharing mode via Internet communication or menu IM4 to start a game in a game sharing mode via local wireless communication as illustrated in the top diagram of FIG. 10) (step S131). If an operation to select a game mode in which to play the shared game has been performed, processor 11 proceeds to process step S132. On the other hand, if an operation to select a game mode in which to play the shared game has not been performed, processor 11 proceeds to process step S146.
[0264] In step S132, processor 11 refers to the host device operation data Db and determines whether an operation has been performed to select a game mode in which a shared game is played using Internet communication (for example, an operation to select menu IM3 that starts a game in a game sharing mode via Internet communication as illustrated in the top diagram of FIG. 10). If an operation has been performed to select a game mode in which a shared game is played using Internet communication, processor 11 proceeds to step S133. On the other hand, if an operation has been performed to select a game mode in which a shared game is played using local wireless communication, processor 11 proceeds to step S143.
[0265] In step S133, the processor 11 determines whether the number of shared games being played using Internet communication in the communication group to which the own device belongs has reached a maximum. For example, if the number of shared games being played using Internet communication in the communication group to which the own device belongs has reached a predetermined threshold (e.g., a number equal to or greater than two), the processor 11 makes a positive determination in step S133. As an example, the processor 11 may obtain information about the members of the communication group from the server 101a and information about the number of host devices playing shared games using Internet communication from the server 101b, and calculate the number of shared games based on this information. Alternatively, the processor 11 may request permission to start a shared game from the server 101b, and the server 101b may determine whether to grant permission based on the number of shared games being played using Internet communication in the same communication group. As another example, the processor 11 may manage the number of shared games being played using Internet communication in the communication group to which the own device belongs. If the number of shared games being played using Internet communication has not reached a maximum, the processor 11 proceeds to step S134. On the other hand, if the number of shared games using Internet communication has reached the maximum, processor 11 proceeds to step S146. Note that if no limit is placed on the number of shared games that can be simultaneously activated within the same communication group, the process of step S133 does not need to be executed. If a positive determination is made in step S133, the process may return to step S130 and prompt the user to select a game mode again. In this case, the game mode in which a shared game is played using Internet communication may be made unselectable, and the user may be prompted to select a game mode again.
[0266] In step S134, the processor 11 determines whether the communication function of the device itself is activated. If the communication function is not activated, the processor 11 proceeds to step S135. On the other hand, if the communication function is activated, the processor 11 proceeds to step S142.
[0267] In step S135, the processor 11 displays the third dedicated button menu image BMc (see the lower diagram in FIG. 13) on the display 15 of the own device, and proceeds to the next step.
[0268] Next, processor 11 refers to the own device operation data Db and determines whether an operation has been performed to invite a user of another information processing device 1 displayed via the third dedicated button menu image BMc to join the communication function (step S136). If an operation to invite a user of another information processing device 1 has been performed, processor 11 proceeds to step S137. On the other hand, if an operation to invite a user of another information processing device 1 has not been performed, processor 11 proceeds to step S138.
[0269] In step S137, the processor 11 transmits solicitation data inviting the user selected in step S136 to become a member of the communication group via the server 101a, and proceeds to step S138. For example, the processor 11 stores information inviting the user of another information processing device 1 to become a member of the communication group and solicitation data indicating the source of the solicitation in the communication member registration related data Dj, and transmits the solicitation data to the server 101a.
[0270] In step S138, the processor 11 determines whether or not acceptance data approving registration as a member of the communication group has been received from the other information processing device 1 to which the invitation data was sent, via the server 101a. If the acceptance data has been received, the processor 11 proceeds to step S139. On the other hand, if the acceptance data has not been received, the processor 11 returns to step S134 and repeats the process. Note that if the process in step S138 has been repeated for a predetermined time or longer, the processor may return to step S130 and again prompt the user to select a game mode.
[0271] In step S139, processor 11 performs member registration processing to transmit data for registering the user of the own device as a member of the communication group to server 101a, and proceeds to the next step. For example, processor 11 stores information for registering the user of the own device as a member of the communication group in communication member registration related data Dj and transmits the data to server 101a. Note that if processing for registering the user of the own device as a member of the communication group is performed in server 101a using the solicitation data transmitted in step S139 above, the member registration processing in step S139 above does not need to be performed. In this case, in server 101a, triggered by transmission of the acceptance data from the information processing device 1 that is the recipient of the solicitation data, processing is performed to register the information processing device 1 that transmitted the solicitation data and the information processing device 1 that transmitted the acceptance data as members of the same communication group.
[0272] Next, the processor 11 activates the communication function of the own device (step S140), and proceeds to step S142.
[0273] In step S142, the processor 11 starts up a game sharing function (system program) for the host using Internet communication, and proceeds to step S144.
[0274] On the other hand, if it is determined in step S132 that an operation for selecting a game mode in which a shared game is played using local wireless communication has been performed, processor 11 activates a host game sharing function of the own device using local wireless communication (step S143), and proceeds to step S144. The processing by the host game sharing function (system program) will be described later with reference to FIG.
[0275] In step S144, processor 11 performs game sharing mode processing, and then ends the processing of this flowchart. In this manner, the game sharing function is activated and a communication method for the game sharing function is selected from the menu provided by the game program. Therefore, when a user wants to play a game as a shared game, the function can be activated in an easy-to-understand manner, and an appropriate communication method can be selected depending on the situation. An example of the game sharing mode processing performed in step S144 will be described below with reference to FIG. 23.
[0276] 23, processor 11 acquires user information (e.g., user ID) of users playing the shared game, sets a game session for the shared game (step S150), and proceeds to the next step. For example, when a shared game is played using Internet communication, processor 11 acquires information about game members of the shared game to be started from server 101b (user IDs of game members, team identification information of players participating as players, spectator participation information of players participating as spectators, etc.), and updates game session data Dg. Note that when a shared game is played using local wireless communication, the game session data Dg of the shared game to be started is updated by the processing of step S176, which will be described later, performed by the game sharing function (for host) of the host device.
[0277] Next, processor 11 performs image sharing setting processing (step S151), and proceeds to step S152. An example of the image sharing setting processing performed in step S151 will be described below with reference to FIG. 24. For example, the content of the image sharing setting processing differs depending on the game program. Below, the following description will be given using game programs A, B, and C, which are game programs each having different content of the image sharing setting processing.
[0278] In FIG. 24, processor 11 executing game program A issues a first command to the game sharing function (for host) of its own device via the API (step S165) and terminates the processing of this subroutine. Here, game program A includes a first command to prohibit all game members who are playing a shared game together from sharing images. The first command is a command to "prohibit all members playing a shared game together from sharing their screens," and it is not necessary to specify individual users who are prohibited from sharing images. In response to this command, the system program sets screen sharing prohibition for each member currently playing a shared game together. Based on the first command included in game program A, processor 11 instructs the game sharing function (for host) of its own device to set image sharing prohibition for all game members playing a shared game. Note that in this setting, only members participating as players in the shared game may be subject to image sharing prohibition, and if a user participating as a spectator is present in the shared game, that user may be excluded from the image sharing prohibition.
[0279] Furthermore, processor 11 executing game program B refers to the game session data Dg to identify members of the opposing team in the shared game to be started (step S166), and proceeds to the next step. For example, processor 11 identifies the user IDs of users belonging to the opposing team based on the user IDs of game members and team identification information managed in the game session data Dg. In another embodiment, when game program B executed by processor 11 sets image sharing prohibition for users participating as players other than game spectators, processor 11 may exclude user IDs of users participating in the shared game as spectators from the targets of image sharing prohibition based on the user IDs of game members and spectator participation information managed in the game session data Dg.
[0280] Next, processor 11 executing game program B issues a second command to the game sharing function (for host) of its own device via the API (step S167), and ends the processing of this subroutine. Here, game program B includes a second command to prohibit a specified user from sharing images (individual prohibition). Unlike the first command, the second command is a command that includes the user ID of the user who will be prohibited from sharing images. Based on the second command included in game program B, processor 11 instructs the game sharing function (for host) of its own device to set the user identified in step S166 to be prohibited from sharing images.
[0281] Furthermore, processor 11 executing game program C issues a third command to the game sharing function (for host) of its own device via the API (step S168), and ends the processing of this subroutine. Here, game program C includes a third command to prohibit all users from sharing images (total prohibition). The third command is a command to "prohibit all users from sharing images," and does not include the user IDs for which image sharing is prohibited. Based on the third command included in game program C, processor 11 instructs the game sharing function (for host) of its own device to set all users to be prohibited from sharing images.
[0282] Returning to FIG. 23, after the image sharing setting process in step S151, the processor 11 acquires operation data from the operation unit 19 of the own device, updates the own device operation data Db (step S152), and proceeds to the next step.
[0283] Next, processor 11 acquires the operation data of all guest devices, updates the other device operation data Dc (step S153), and proceeds to the next step. For example, processor 11 updates the other device operation data Dc using the operation data of the guest devices and the game session ID received from server 101b and the guest devices in the game sharing function for the host.
[0284] Next, processor 11 performs game processing based on the operation data of its own device (host device) and the other devices (guest devices) (step S154), and proceeds to the next step. The specific content of the game processing in step S154 is arbitrary, and for example, the actions of the player characters corresponding to each device may be controlled based on the operation data of that device, the actions of non-player characters may be controlled, or game commands may be selected based on the operation data of each device.
[0285] Next, processor 11 performs processing to generate game images for each device based on the results of the game processing in step S154 (step S155), and proceeds to the next step. For example, processor 11 generates game images for its own device (host device) and game images for other devices (guest devices) based on the results of the game processing, and updates its own device game image data Dd and other device game image data De. Note that the generated game images may be images common to all of the host device and guest devices.
[0286] Next, processor 11 draws the game image of the host device in the frame buffer, performs control to display the game image on display 15 of the host device (step S156), and proceeds to the next step. For example, processor 11 adds a shared game identification indicator to the game image for the host device indicated by the host device game image data Dd, draws it in the frame buffer, and displays it in the host device image display area on display 15 (see game image IPa in FIG. 6 and game image IPc in FIG. 8).
[0287] Next, processor 11 performs processing to output the game images of the other devices to the game sharing function for the host (step S157), and proceeds to the next step. For example, processor 11 controls transmission of the game image data to each guest device by outputting the game image data for the guest devices stored in the other device game image data De together with the game session ID to the game sharing function for the host.
[0288] Next, processor 11 determines whether to end the game (step S158). Conditions for ending the game in step S158 include, for example, the satisfaction of a condition for ending one game, or the user performing an operation to end the game. If processor 11 does not end the game, it returns to step S152 and repeats the process, and if processor 11 decides to end the game, it proceeds to step S159.
[0289] In step S159, processor 11 determines whether to end the game sharing mode. Conditions for ending the game sharing mode in step S159 include, for example, that a condition for ending the game sharing mode is satisfied, or that the user has performed an operation to end the game sharing mode. If processor 11 does not want to end the game sharing mode, processor 11 returns to step S152 and repeats the process, and if processor 11 wants to end the game sharing mode, processor 11 ends the process of this subroutine.
[0290] 22, if it is determined in step S131 that the operation for selecting the game mode in which the shared game is to be played has not been performed, processor 11 performs image sharing setting processing in the standalone mode or the online multiplay mode (step S146), and proceeds to the next step. Note that the image sharing setting processing performed in step S146 is similar to the processing in step S151 described with reference to FIG. 24, and therefore detailed description thereof will be omitted here.
[0291] Next, processor 11 performs processing in standalone mode or communication multiplay mode (step S147), and proceeds to the next step. Note that in step S147, the game play mode is determined to be standalone mode or communication multiplay mode based on the game mode selected from the game mode selection menu displayed in step S130, and a game image based on the result of game processing according to the selected mode is displayed as a self-view image on display 15 of the player's device; however, the specific content of the game processing is arbitrary, and a detailed description thereof will be omitted here.
[0292] Next, processor 11 determines whether or not to end the game being played in step S147 (step S148). Conditions for ending the game in step S148 include, for example, a condition for ending the game being satisfied, or the user performing an operation to end the game. If processor 11 does not want to end the game, it returns to step S147 and repeats the process, and if it wants to end the game, it ends the process according to the flowchart.
[0293] Next, a detailed example of the game sharing function processing for the host, which is an example of information processing in this embodiment, will be described with reference to Fig. 25. Note that Fig. 25 is a flowchart showing an example of the game sharing function processing for the host executed by the information processing device 1. In this embodiment, the series of processes shown in Fig. 25 are performed by the processor 11 executing a system program included in the various programs Pa. Note that the game sharing function processing for the host shown in Fig. 25 is started in response to execution of step SS142 or step S143, but may be started at any other timing.
[0294] 25, the processor 11 determines whether the game sharing function is activated in the local communication mode (step S171). If the game sharing function is activated in the Internet communication mode, the processor 11 proceeds to step S172. On the other hand, if the game sharing function is activated in the local communication mode, the processor 11 proceeds to step S175.
[0295] In step S172, processor 11 displays an invitee selection image (see the second diagram in FIG. 10) for inviting members of the communication group to which the own device belongs to a shared game (Internet communication). Then, processor 11 accepts a user operation to select an invitee, and when the user operation is performed by referring to own device operation data Db, proceeds to the next step. Note that multiple invitees may be selectable. Processor 11 may also obtain information about members of the communication group from server 101a and display the invitee selection image based on the information.
[0296] Next, processor 11 transmits invitation data inviting each of the invitee information processing devices 1 to share a game (Internet communication) via server 101b, and proceeds to the next step. For example, processor 11 stores the invitation data to be transmitted to the invitee information processing device 1 selected in step S172 in invitation / recruitment / participation data Dh, and transmits the invitation data to the invitee information processing device 1 via server 101b.
[0297] Next, processor 11 sets game session data for the shared game to be started based on the participation information transmitted from server 101b, and proceeds to step S177. For example, processor 11 updates the game session data Dg based on the user information (e.g., username), game session ID, team identification information, spectator participation information, etc. of the guest device registered as a game member, which are indicated by the participation information transmitted from server 101b.
[0298] On the other hand, if it is determined in step S171 that the game sharing function is activated in the local communication mode, the processor 11 broadcasts invitation data inviting users to share a game (local wireless communication) to information processing devices 1 present in the vicinity of the own device (for example, within a range in which the own device can perform local wireless communication), and proceeds to the next step. For example, the processor 11 stores the invitation data to be transmitted to the information processing devices 1 in the invitation / invitation / participation data Dh, and transmits the invitation data by broadcast.
[0299] Next, processor 11 sets game session data for the shared game to be started based on the participation request transmitted from the guest device, and proceeds to step S177. For example, processor 11 sets game members, a game session ID, team identification information, spectator participation information, and the like for the shared game to be started based on user information (e.g., username) of the guest device indicated in the participation request, and updates the game session data Dg. Processor 11 also transmits information indicating the set game session data to each guest device that transmitted the participation request.
[0300] In this way, in local communication mode, game sharing is solicited from surrounding devices, not just the communication group that the device belongs to. In the case of a shared game over the Internet, there is a possibility of playing with users far away, and a communication function is required to communicate and share play, but in local communication mode, there is a high possibility of direct communication, so there is no need to limit it to communication members as in a shared game over the Internet.
[0301] In step S177, processor 11 determines whether or not the above-mentioned first command (see step S165 in FIG. 24) has been issued from the game module (module based on the game program) of the own device to the game sharing function (for host) via the API. If the first command has been issued, processor 11 proceeds to step S178. On the other hand, if the first command has not been issued, processor 11 proceeds to step S180.
[0302] In step S178, processor 11 instructs server 101b or each guest device to prohibit image sharing of game partners, which prohibits all users who will be game partners from sharing images, and proceeds to the next step. For example, when starting a shared game using Internet communication, processor 11 requests server 101b to turn on the partner prohibition flag. Also, when starting a shared game using local wireless communication, processor 11 instructs each guest device to prohibit image sharing of game partners.
[0303] Next, processor 11 identifies the user IDs of all users with whom the game will be shared, writes each user ID into the prohibited user ID (step S179), and proceeds to step S180. For example, processor 11 refers to the game session data Dg to obtain the user IDs of all game members who will participate in the shared game to be started, and writes the user IDs into the prohibited user ID data Dr.
[0304] In step S180, processor 11 determines whether or not the game module of the own device has issued the second command (see step S167 in FIG. 24) to the game sharing function (for host). If the second command has been issued, processor 11 proceeds to step S181. On the other hand, if the second command has not been issued, processor 11 proceeds to step S183.
[0305] In step S181, processor 11 writes the user IDs of users who are prohibited from sharing images, as specified by the second instruction, into prohibited user ID data Dr, and proceeds to the next step. Note that the second instruction may specify both the IDs of users who are prohibited from sharing images on the host device and the IDs of users who are prohibited from sharing images on the guest device (if there are multiple guest devices, the IDs of users who are prohibited from sharing images on each guest device). In this case, in step S181, the IDs of users who are prohibited from sharing images on the host device may be written into prohibited user ID data Dr.
[0306] Next, processor 11 indicates to each guest device the user IDs of users who are to be prohibited from sharing images (user IDs prohibited for each guest device) specified by the second instruction (step S182), and proceeds to step S183. For example, when starting a shared game using Internet communication, processor 11 indicates to each guest device the user IDs of users who are to be prohibited from sharing images via server 101b (or peer-to-peer). Also, when starting a shared game using local wireless communication, processor 11 directly indicates to each guest device the user IDs of users who are to be prohibited from sharing images.
[0307] In step S183, processor 11 determines whether or not the third command (see step S168 in FIG. 24) has been issued from the game module of the own device to the game sharing function (for host). If the third command has been issued, processor 11 proceeds to step S184. On the other hand, if the third command has not been issued, processor 11 proceeds to step S186.
[0308] In step S184, processor 11 sets the all prohibition flag to ON to update all prohibition flag data Dq, and proceeds to the next step.
[0309] Next, processor 11 instructs each guest device to prohibit all play (step S185), and proceeds to step S186. For example, when starting a shared game using Internet communication, processor 11 instructs each guest device to prohibit all play via server 101b (or peer-to-peer). Also, when starting a shared game using local wireless communication, processor 11 directly instructs each guest device to prohibit all play.
[0310] In step S186, processor 11 receives the operation data of all guest devices, outputs it as data to be used in the game program processing, and proceeds to the next step. For example, if the Internet communication mode is selected, processor 11 receives the operation data of all guest devices transmitted from server 101b (or peer-to-peer) via Internet communication, along with the game session ID, and outputs it as data to be used in the game program processing. Also, if the local communication mode is selected, processor 11 receives the operation data of all guest devices transmitted from each guest device via local wireless communication, and outputs it as data to be used in the game program processing.
[0311] Next, processor 11 transmits the game image data for the guest device output in the game program processing (step S187), and returns to step S186 to repeat the process. For example, if the Internet communication mode is selected, processor 11 transmits the game image data for the guest device output in the game program processing to server 101b (or peer-to-peer) along with the game session ID using Internet communication. Also, if the local communication mode is selected, processor 11 transmits the game image data for the guest device output in the game program processing to each game device using local wireless communication.
[0312] Next, with reference to FIG. 26 , a detailed example of a guest game sharing function process, which is an example of information processing in this embodiment, will be described. FIG. 26 is a flowchart showing an example of the guest game sharing function process executed by the information processing device 1. The guest game sharing function process may be started in step S75 described with reference to FIG. 18 or in step S313 described with reference to FIG. 19 . In the former case, the guest game sharing function process is started in local communication mode, and in the latter case, it is started in internet communication mode. In this embodiment, the series of processes shown in FIG. 26 are performed by the processor 11 executing a system program included in the various programs Pa. The guest game sharing function process shown in FIG. 26 is started in response to execution of step S68, but may also be started at any other timing.
[0313] 26, processor 11 acquires and stores game session data to be used in the shared game (step S200) and proceeds to the next step. For example, in the Internet communication mode, processor 11 uses Internet communication to set game session data for the shared game to be started based on participation information transmitted from server 101b (or peer-to-peer), and updates game session data Dg. In the local communication mode, processor 11 uses local wireless communication to update game session data Dg based on game session data transmitted from the host device.
[0314] Next, the processor 11 determines whether or not an instruction to prohibit sharing of images of game opponents has been issued (step S201). For example, if the opponent prohibition flag managed by the server 101b is set to on, the processor 11 makes an affirmative determination in the above step S201. Furthermore, if the processor 11 has received an instruction to prohibit sharing of images of game opponents from the host device, the processor 11 makes an affirmative determination in the above step S201. Then, if an instruction to prohibit sharing of images of game opponents has been issued, the processor 11 proceeds to the process of step S202. On the other hand, if an instruction to prohibit sharing of images of game opponents has not been issued, the processor 11 proceeds to the process of step S203. Note that, if an opponent prohibition flag is managed in the information processing device 1 (for example, the host device or each guest device) because a shared game is played using local wireless communication, the processor 11 may make the determination in the above step S201 based on the setting of the opponent prohibition flag managed by the information processing device 1.
[0315] In step S202, processor 11 writes the user IDs of all users with whom the game will be shared into the prohibited user ID field, and proceeds to step S203. For example, processor 11 refers to the game session data Dg to obtain the user IDs of all game members who will participate in the shared game to be started, and writes the user IDs into the prohibited user ID data Dr.
[0316] In step S203, the processor 11 determines whether or not an individual prohibition has been instructed from the host device. For example, if the host device has instructed the user ID of a user who is to be prohibited from sharing images, the processor 11 makes a positive determination in step S203. If an individual prohibition has been instructed, the processor 11 proceeds to step S204. On the other hand, if an individual prohibition has not been instructed, the processor 11 proceeds to step S205. For example, in the Internet communication mode, the user ID of a user who is to be prohibited from sharing images is instructed as the individual prohibition from the host device via the server 101b (or peer-to-peer) using Internet communication. Furthermore, in the local communication mode, the host device directly instructs each guest device as the individual prohibition from sharing images using local wireless communication.
[0317] In step S204, the processor 11 writes the user ID of the user for whom individual prohibition has been instructed by the host device into the prohibited user ID data Dr, and proceeds to step S205.
[0318] In step S205, processor 11 determines whether or not a total prohibition has been instructed by the host device. If a total prohibition has been instructed, processor 11 proceeds to step S206. On the other hand, if a total prohibition has not been instructed, processor 11 proceeds to step S207. For example, in the Internet communication mode, the total prohibition is instructed from the host device via server 101b (or peer-to-peer) using Internet communication. In the local communication mode, the total prohibition is instructed directly from the host device to each guest device using local wireless communication.
[0319] In step S206, processor 11 sets the all prohibition flag to ON to update all prohibition flag data Dq, and proceeds to step S207.
[0320] In step S207, processor 11 acquires operation data from operation unit 19 of its own device, updates its own device operation data Db, and proceeds to the next step.
[0321] Next, processor 11 transmits the operation data of its own device acquired in step S207 (step S208), and proceeds to the next step. For example, in the Internet communication mode, processor 11 transmits the operation data of its own device together with the game session ID to server 101b (or to the host device in a peer-to-peer manner) using Internet communication. In the local communication mode, processor 11 transmits the operation data of its own device to the host device using local wireless communication.
[0322] Next, processor 11 determines whether or not game image data for the host device (guest device) has been received (step S209). If processor 11 has received game image data for the host device, the process proceeds to step S210. On the other hand, if processor 11 has not received game image data for the host device, the process returns to step S207 and repeats the process. For example, in the Internet communication mode, the game image data for the host device is received via server 101b using Internet communication (or peer-to-peer). In the local communication mode, the game image data for the host device is received directly from the host device using local wireless communication.
[0323] In step S210, processor 11 updates the host device game image data Dd using the received game image data and game session ID. Processor 11 then draws the game image indicated by the host device game image data Dd in the frame buffer, performs control to display the game image on the host device's display 15, and returns to step S207 to repeat the process. For example, processor 11 adds a shared game identification indicator to the game image for the guest device indicated by the host device game image data Dd, draws it in the frame buffer, and displays it in the host device image display area on display 15 (see game image IPb in FIG. 7 and game image IPd in FIG. 9).
[0324] In this way, the game sharing function processing for guests is started in local communication mode when a guest accepts an invitation from the host device in local communication mode, and is started in internet communication mode when a guest receives an invitation from the host device in internet communication mode and accepts it, so that the communication method on the guest side can be set efficiently.
[0325] Next, the data and programs stored in the storage unit 104a of the server 101a that controls the communication functions will be described with reference to Fig. 27. In addition to the data shown in Fig. 27, the server 101a also stores data used in other processes, but detailed descriptions thereof will be omitted.
[0326] 27, the data storage area of the storage unit 104a stores communication data D1a, communication member management data D1b, etc. Also, the program storage area of the storage unit 104a stores various programs Pb for realizing the above-mentioned processes.
[0327] The communication data D1a stores received data received from each of the plurality of information processing devices 1 as appropriate, and also stores transmission data to be transmitted to each of the plurality of information processing devices 1 as appropriate. Note that the timing at which data is received from the information processing device 1 and stored in the communication data D1a, and the timing at which data to be transmitted to the information processing device 1 is stored in the communication data D1a and transmitted are arbitrary, and may be performed at each cycle of processing executed by the server 101a.
[0328] The communication member management data D1b is management data that indicates member information for each communication group that has been formed. For example, the member information includes a communication group ID that indicates the communication group, as well as a device ID and a user name for each member.
[0329] Next, the details of the processing performed by the server 101a that controls the communication functions will be described with reference to Fig. 28. Here, in the flowchart shown in Fig. 28, the processing by the server 101a that manages the communication groups will be mainly described, and detailed descriptions of other processing that is not directly related to this processing will be omitted.
[0330] 28, the control unit 103a of the server 101a determines whether or not solicitation data for the communication function has been received from the information processing device 1 (step S211). If the control unit 103a has received the solicitation data, the process proceeds to step S212. On the other hand, if the control unit 103a has not received the solicitation data, the process proceeds to step S213.
[0331] In step S212, the control unit 103a transmits solicitation data to the information processing device 1 that is the solicitation target, and proceeds to step S213. For example, the control unit 103a transmits solicitation data indicating the solicitor user and that the solicitor user is soliciting registration as a member of a communication group, addressed to the solicitation destination information processing device 1 of the solicitation data received in step S211 above. Note that if the solicitor user already belongs to a communication group, the control unit 103a may also transmit the solicitation data together with information regarding the composition of the communication group. For example, the control unit 103a may refer to the communication member management data D1b, and if the solicitor user is registered as a member of a communication group, the control unit 103a may also transmit the solicitation data to the solicitation destination information processing device 1, adding information regarding the composition of the communication group and the communication group ID of the communication group.
[0332] In step S213, the control unit 103a determines whether or not consent data or registration data has been received from the information processing device 1. If consent data or registration data has been received, the control unit 103a proceeds to step S214. On the other hand, if neither consent data nor registration data has been received, the control unit 103a proceeds to step S217.
[0333] In step S214, the control unit 103a performs member update processing and proceeds to step S217. As a first example, the control unit 103a references the communication member management data D1b, and if the inviting user indicated in the received acceptance data does not belong to a communication group, creates a new communication group. The control unit 103a then registers the inviting user and the users who accepted in the acceptance data as members of the newly created communication group, sets a communication group ID for the communication group, and updates the communication member management data D1b. As a second example, the control unit 103a references the communication member management data D1b, and if the inviting user indicated in the received acceptance data belongs to a communication group, registers the users who accepted in the acceptance data as members of the communication group, and updates the communication member management data D1b. As a third example, the control unit 103a registers the sender user who sent the registration data as a member of the communication group in which the user wishes to register, and updates the communication member management data D1b.
[0334] In step S217, the control unit 103a determines whether or not voice data has been received from the information processing device 1. If voice data has been received, the control unit 103a proceeds to step S218. On the other hand, if voice data has not been received, the control unit 103a proceeds to step S219.
[0335] In step S218, the control unit 103a transmits the voice data received in step S217 based on the communication member management data D1b, and proceeds to step S219. For example, the control unit 103a refers to the communication member management data D1b to extract the communication group to which the sender of the received voice data belongs, adds information about the sender of the voice data and the communication group ID to the voice data, and transmits the voice data to each of the information processing devices 1 of the members of the communication group.
[0336] In step S219, the control unit 103a determines whether or not shared image data has been received from the information processing device 1. If shared image data has been received, the control unit 103a proceeds to step S220. On the other hand, if shared image data has not been received, the control unit 103a returns to step S211 and repeats the process.
[0337] In step S220, the control unit 103a transmits the shared image data received in step S219 based on the communication member management data D1b, and then returns to step S211 to repeat the process. For example, the control unit 103a references the communication member management data D1b to extract the communication group to which the sender of the received shared image data belongs, adds information about the sender of the shared image data (for example, a user ID) and a communication group ID to the shared image data, and transmits the data to each of the information processing devices 1 of the members of the communication group.
[0338] Next, data and programs stored in the storage unit 104b of the server 101b that controls the game sharing function will be described with reference to Fig. 29. In addition to the data shown in Fig. 29, the server 101b also stores data used in other processes, but detailed descriptions thereof will be omitted.
[0339] 29, the data storage area of the storage unit 104b stores communication data D2a, host-guest management data D2b, and partner prohibition flag data D2c, etc. Also, the program storage area of the storage unit 104b stores various programs Pc for realizing the above processing.
[0340] The communication data D2a stores received data received from each of the plurality of information processing devices 1 as appropriate, and also stores transmission data to be transmitted to each of the plurality of information processing devices 1 as appropriate. Note that the timing at which data is received from the information processing device 1 and stored in the communication data D2a, and the timing at which data to be transmitted to the information processing device 1 is stored in the communication data D2a and transmitted are arbitrary, and may be performed at each cycle of processing executed by the server 101b.
[0341] The host-guest management data D2b is management data that indicates device information for each combination of a host device and a guest device that are sharing data. For example, the device information includes a game session ID for each combination, as well as the device IDs, user names, user IDs, and type of game being played for each of the host device and guest device that are sharing data.
[0342] The opponent prohibition flag data D2c is data indicating an opponent prohibition flag that is set on corresponding to a game session in which image sharing of game opponents is prohibited, and the opponent prohibition flag corresponding to the game session ID to which the information processing device 1 belongs is set on based on an instruction from the information processing device 1.
[0343] Next, details of the processing performed by the server 101b that controls the game sharing function will be described with reference to Fig. 30. Here, in the flowchart shown in Fig. 30, the processing by the server 101b that manages the host device and guest devices that play the shared game will be mainly described, and detailed descriptions of other processing that is not directly related to this processing will be omitted.
[0344] 30, the control unit 103b of the server 101b determines whether or not an instruction to send invitation data (Internet communication) to a shared game has been received from the information processing device 1 (step S231). If an instruction to send the invitation data has been received, the control unit 103b proceeds to step S232. On the other hand, if an instruction to send the invitation data has not been received, the control unit 103b proceeds to step S234.
[0345] In step S232, the control unit 103b registers the host device and the invitee, and proceeds to the next step. For example, the control unit 103b registers the device ID, user ID, and user name of the inviter who instructed the transmission of the invitation data as the host device, and registers the device ID, user ID, and user name of the invitee as a guest device candidate, and updates the host-guest management data D2b.
[0346] Next, the control unit 103b transmits the invitation data to the information processing device 1 that is the invitee (step S233), and proceeds to step S234. For example, the control unit 103b transmits invitation data indicating that the inviting user and the inviting user are inviting the invitee to play the shared game, addressed to the information processing device 1 that is the invitee in the invitation data transmission instruction received in step S231. Note that if the inviter has already become the host device and formed a pairing to play the shared game with other guest devices, the control unit 103b may also transmit the invitation data together with information about the configuration of the pairing. For example, the control unit 103b may refer to the host-guest management data D2b, and may add information about the configuration of the pairing with the guest device in which the inviter is the host device and the game session ID of the shared game to be invited, and transmit the invitation data to the information processing device 1 that is the invitee. Furthermore, if participation data is not received from the invitee after a predetermined time has elapsed, the control unit 103b may terminate transmission of the invitation data to the invitee, cancel the registration of the guest device candidate, and update the host-guest management data D2b.
[0347] In step S234, the control unit 103b determines whether or not participation data has been received from the information processing device 1. If participation data has been received, the control unit 103b proceeds to step S235. On the other hand, if participation data has not been received, the control unit 103b proceeds to step S237.
[0348] In step S235, the control unit 103b registers the guest device and proceeds to the next step. For example, the control unit 103b changes the registration of the sender of the received participation data from a guest device candidate to the guest device, and updates the host-guest management data D2b. Furthermore, if a game session ID has not been set for the shared game combination in which the guest device is registered, the control unit 103b sets the game session ID of the shared game for that combination and updates the host-guest management data D2b.
[0349] Next, the control unit 103b transmits participation information to the information processing device 1 that will be the opponent of the guest device registered in step S235 (step S236), and proceeds to step S237. For example, the control unit 103b transmits participation information indicating the newly registered guest device (e.g., device ID), user (e.g., user ID and username), and the game session ID to the host device and other guest devices.
[0350] In step S237, the control unit 103b determines whether or not an image sharing prohibition instruction (e.g., an instruction to turn on the opponent prohibition flag) has been received from the information processing device 1. If the control unit 103b has received the image sharing prohibition instruction from the opponent, the process proceeds to step S238. On the other hand, if the control unit 103b has not received the image sharing prohibition instruction from the opponent, the process proceeds to step S239.
[0351] In step S238, the control unit 103b sets the opponent prohibition flag to ON, and the process proceeds to step S239. For example, the control unit 103b sets the opponent prohibition flag to ON, which corresponds to the game session ID started by the information processing device 1 that transmitted the image sharing prohibition instruction for the game opponent, and updates the opponent prohibition flag data D2c.
[0352] In step S239, the control unit 103b determines whether or not an instruction for individual prohibition or total prohibition has been received from the information processing device 1. As an example, if the control unit 103b receives data (individual prohibition instruction) from the information processing device 1 (host device) instructing each guest device to provide the user ID of a user who is prohibited from sharing images, or if the control unit 103b receives data (total prohibition instruction) instructing each guest device to perform total prohibition from the information processing device 1 (host device), the control unit 103b makes a positive determination in the above step S239. If the control unit 103b receives an instruction for individual prohibition or total prohibition, the control unit 103b proceeds to step S240. On the other hand, if the control unit 103b has not received either an instruction for individual prohibition or total prohibition, the control unit 103b proceeds to step S241.
[0353] In step S240, the control unit 103b transmits the instruction of individual prohibition or total prohibition received in step S239 to the corresponding guest device, and the process proceeds to step S241.
[0354] In step S241, the control unit 103b determines whether or not operation data has been received from the information processing device 1. If operation data has been received, the control unit 103b proceeds to step S242. On the other hand, if operation data has not been received, the control unit 103b proceeds to step S243.
[0355] In step S242, the control unit 103b transmits the received operation data to the corresponding host device, and proceeds to step S243. For example, the control unit 103b references the host-guest management data D2b to extract the host device associated with the sender (guest device) of the operation data, adds information about the guest device that sent the operation data and a game session ID to the operation data, and transmits the operation data to the host device.
[0356] In step S243, the control unit 103b determines whether or not game image data has been received from the information processing device 1. If the control unit 103b has received game image data, the process proceeds to step S244. On the other hand, if the control unit 103b has not received game image data, the process returns to step S231 and repeats the process.
[0357] In step S244, the control unit 103b transmits the received game image data to the corresponding guest devices, and then returns to step S231 to repeat the process. For example, the control unit 103b references the received game image data and the host-guest management data D2b, extracts a destination to which the game image data should be transmitted from the guest device paired with the source (host device) of the game image data, adds host device information and a game session ID to the game image data, and transmits the game image data to the destination guest device.
[0358] 17 to 26, 28, and 30 are merely examples, and the order of the steps may be changed, or other processes may be performed in addition to and / or instead of the steps, as long as the same results are obtained. In the present embodiment, the steps of the flowcharts are described as being executed by the processor 11, the control unit 103a, or the control unit 103b (CPU), but some of the steps in the flowcharts may be executed by the processor 11, the control unit 103a, or the control unit 103b, and other steps may be executed by a processor or dedicated circuit other than the processor 11, the control unit 103a, or the control unit 103b, or all of the steps in the flowcharts may be executed by a processor or dedicated circuit other than the processor 11, the control unit 103a, or the control unit 103b. Furthermore, some of the processes executed by the information processing device 1, the server 101a, and the server 101b may be executed by another information processing device that can communicate with the information processing device 1, the server 101a, or the server 101b (for example, another device that can communicate with these devices via a network). That is, each of the processes shown in Figures 17 to 26, 28, and 30 may be executed by a plurality of devices including the information processing device 1, the server 101a, or the server 101b working together.
[0359] In this way, in this embodiment, image sharing can be prohibited for at least one game member among the communication members, while image sharing can be performed for other communication members, thereby allowing appropriate sharing of game images in the communication function.
[0360] In the above-described embodiment, a client-server system is used in which multiple information processing devices 1 communicate over the Internet via server 101a or 101b. However, other communication systems may also be used. In other embodiments, a peer-to-peer communication system may be used in which multiple information processing devices 1 exchange data directly with each other over the Internet without using a server. For example, at least one of the data communication related to the communication function performed via server 101a and the data communication related to the game sharing function performed via server 101b may be performed using a peer-to-peer communication system over the Internet. When the former data communication is performed using a peer-to-peer communication system, the functions of the group management unit 105 of server 101a may be provided in each of the multiple information processing devices 1. When the latter data communication is performed using a Peer to Peer communication system, among the functions of the game management unit 106 of the server 101b, the guest device registration / management function may be provided in the host game sharing function of each of the multiple information processing devices 1, and the host device registration / management function may be provided in the guest game sharing function of each of the multiple information processing devices 1.
[0361] Furthermore, when the above-described peer-to-peer communication system is used, data communication using the communication system may be performed via the Internet or local wireless communication. For example, in another embodiment, data communication related to the communication function may be performed via the Internet via the server 101a, and data communication related to the game sharing function may be performed via local wireless communication using the peer-to-peer communication system.
[0362] In the above description, information processing (game processing) is performed by the information processing device 1 and the servers 101a and 101b. However, at least some of the processing steps may be performed by other devices. For example, if the information processing device 1 and the servers 101a and 101b are configured to be able to communicate with other devices (e.g., another server, another information processing device, another image display device, another game device, or another mobile terminal), the processing steps may be performed by the cooperation of the other devices. In this way, performing at least some of the processing steps by the other devices enables processing similar to the above-described processing. Furthermore, the above-described information processing may be performed by one processor or by cooperation between multiple processors included in an information processing system configured by at least one information processing device. In the above embodiment, the processor 11 of the information processing device 1, the control unit 103a of the server 101a, and the control unit 103b of the server 101b each execute a predetermined program to perform information processing. However, some or all of the above processing may be performed by dedicated circuits provided in the information processing device 1, the server 101a, and / or the server 101b.
[0363] According to the above-described modified example, the present invention can also be realized in a so-called cloud computing system configuration, or in a distributed wide area network or local network system configuration. For example, in a distributed local network system configuration, the above processing can be performed cooperatively between a stationary information processing device (stationary game device) and a portable information processing device (portable game device). Note that in these system configurations, there is no particular limitation on which device performs the above processing, and it goes without saying that the present invention can be realized regardless of the processing division.
[0364] Furthermore, the processing order, setting values, conditions used for judgment, etc. used in the information processing described above are merely examples, and it goes without saying that this embodiment can be realized even with other orders, values, and conditions.
[0365] The program may be supplied to the information processing device 1 or the servers 101a and 101b via an external storage medium such as an external memory, or may be supplied to the device via a wired or wireless communication line. The program may also be pre-recorded in a nonvolatile storage device within the device. The information storage medium for storing the program may be a nonvolatile memory, a CD-ROM, a DVD, or similar optical disk-shaped storage media, a flexible disk, a hard disk, a magneto-optical disk, or a magnetic tape. The information storage medium for storing the program may also be a volatile memory for storing the program. Such a storage medium may be a recording medium readable by a computer or the like. For example, the various functions described above can be provided by having a computer or the like read and execute the program from such a recording medium. The program may also be executed on an interpreter or emulator.
[0366] Although the present invention has been described in detail above, the above description is merely illustrative of the present invention in all respects and is not intended to limit its scope. It goes without saying that various improvements and modifications can be made without departing from the scope of the present invention. Furthermore, those skilled in the art will understand that, from the description of specific embodiments of the present invention, they will be able to implement equivalents based on the description of the present invention and common general technical knowledge. Furthermore, unless otherwise specified, it should be understood that the terms used in this specification are used in the same sense as commonly used in the art. Therefore, unless otherwise defined, all technical and technical terms used in this specification have the same meaning as commonly understood by those skilled in the art to which this invention belongs. In the event of any conflict, the present specification (including definitions) will prevail. [Industrial Applicability]
[0367] As described above, the present invention can be used as an information processing system, a system program, a game program, an information processing method, etc., that enable appropriate sharing of game images and the like in a communication group. [Explanation of symbols]
[0368] 1...Information processing device 11...Processor 12...Flash memory 13...DRAM 14, 102…Communications Department 15...Display 16...Audio output section 17...Audio input section 18...imaging unit 19...Operation unit 100…Network 101...server 103...Control unit 104...Storage section
Claims
1. means for forming a communication group for communicating with each other and for executing a communication function among a plurality of communication members using network communication; a means for forming a game group for playing a multiplayer game, and for executing the multiplayer game among a plurality of game members while generating game image data for each of the game members using the network communication or another network communication; an information processing system comprising a means for sharing a game image based on the generated game image data with other users by prohibiting the game image from being displayed on the display of at least one of the communication members of the communication group to which the game member to which the game image is directed belongs, while displaying the game image on the display of other communication members of the communication group to which the game member to which the game image is directed belongs.
2. 2. The information processing system according to claim 1, further comprising means for setting, as the prohibited target, a game member identified among the communication members of the belonging communication group and game members belonging to the belonging game group in accordance with a predetermined rule determined by the running multiplayer game.
3. means for storing identification information of game members of said game group; 2. The information processing system according to claim 1, further comprising means for setting said game members who satisfy a predetermined condition as targets of said prohibition based on said identification information.
4. the multiplayer game is a team-based game; a means for storing team composition data including identification data of game members of each team in the team competitive game; 2. The information processing system according to claim 1, further comprising: means for setting game members of an opposing team in said team competition game as targets of said prohibition based on said team composition data.
5. the multiplayer game is a game in which there are users participating as players and users participating as spectators, The game system further comprises a means for storing member configuration data including game member identification data for identifying users participating as players and users participating as spectators, 5. The information processing system according to claim 1, wherein at least one of the users participating as players is set as a target of the prohibition based on the member composition data, and the users participating as spectators are not set as a target of the prohibition.
6. further comprising an execution means for executing a game program; a first game program for executing the multi-player game can be stored in a memory as a game program executed by the execution means; The game system further includes a means for storing identification information of game members of the game group; 5. The information processing system according to claim 1, wherein the first game program includes a first command for setting the game member who satisfies a predetermined condition as a target of the prohibition based on the identification information.
7. a second game program for executing the multi-player game can be stored in the memory as a game program executed by the execution means; 7. The information processing system according to claim 6, wherein said second game program includes a second command for prohibiting all game members of said game group.
8. a third game program for executing the multi-player game can be stored in the memory as a game program executed by the execution means; The information processing system according to claim 6 , wherein the third game program includes a third command that targets all users for the prohibition.
9. a second game program and a third game program for executing the multiplayer game can be stored in the memory as game programs executed by the execution means; the second game program includes a second command for prohibiting all game members of the game group to which the player belongs; 7. The information processing system according to claim 6, wherein the third game program includes a third command for prohibiting all communication members of the communication group to which the user belongs.
10. 5. The information processing system according to claim 1, further comprising means for setting all communication members of said communication group as targets of said prohibition based on an instruction from a user.
11. A plurality of game devices are provided, 5. The information processing system according to claim 1, wherein the multiplayer game is a game in which a host device among the plurality of game devices acquires operation data of a guest device among the plurality of game devices, and executes a game program using the operation data of the host device and the operation data of the guest device, thereby generating game image data for the host device and the guest device.
12. A system program that causes a computer to receive an instruction from a means for executing a game program for a multiplayer game to prohibit the sharing of game images for all game members of a game group to which the computer belongs, and to execute processing to prohibit the display of game images based on game image data corresponding to each game member on a display, based on game member information of the game group to which the computer belongs.
13. A system program that causes a computer to receive, from a means for executing a game program for a multiplayer game, an instruction to specify user identification data that are to be prohibited from sharing game images and to perform the prohibition, and to execute a process to prohibit the display on a display of game images based on game image data that corresponds to the specified user identification data that are to be prohibited.
14. On the computer, a process of accepting an instruction from a means for executing a game program of a multiplayer game to prohibit all game members of a belonging game group from sharing game images, and prohibiting the display of game images based on game image data corresponding to each of the game members on a display based on game member information of the belonging game group; A system program that causes a means for executing a game program for a multiplayer game to accept an instruction to specify user identification data that are to be prohibited from sharing game images and to prohibit the prohibition, and to execute a process of prohibiting the display of game images based on game image data corresponding to the specified user identification data that are to be prohibited.
15. 15. The system program according to claim 12, further comprising causing the computer to receive, from a means for executing a game program for a multiplayer game, an instruction to prohibit all other users from sharing the game image, and to execute a process to prohibit all other users from displaying game images based on game image data on a display.
16. On the computer, Game processing for multiplayer games; and instructing a system program to prohibit all game members of a game group to which the multiplayer game belongs from sharing game images.
17. On the computer, Game processing for multiplayer games; a game program that executes a process of identifying game members who are to be prohibited from sharing game images in accordance with predetermined rules based on game member information of a game group to which the multiplayer game belongs, and instructing a system program to make the identified game members subject to the prohibition.
18. On the computer, Game processing for multiplayer games; A game program that causes a system program to execute a process of instructing the system program to prohibit game members of an opposing team in a team battle game from sharing game images among a game group to which the multiplayer game belongs.
19. On the computer, A process of forming a communication group for performing communication and performing a communication function among a plurality of communication members using network communication; forming a game group for playing a multiplayer game, and executing the multiplayer game among a plurality of game members while generating game image data for each of the game members using the network communication or another network communication; An information processing method that executes a process of sharing a game image based on the generated game image data with other users by prohibiting the game image from being displayed on the display of at least one of the communication members of the communication group to which the game member to which the game image is directed belongs, while displaying the game image on the display of other communication members of the communication group to which the game member to which the game image is directed belongs.
Citation Information
Patent Citations
Information processing program, game system, game device and information processing method
JP2024068845A