WO2020184258A1 - ゲーム実現方法、ゲーム実現装置及びプログラム - Google Patents

ゲーム実現方法、ゲーム実現装置及びプログラム Download PDF

Info

Publication number
WO2020184258A1
WO2020184258A1 PCT/JP2020/008743 JP2020008743W WO2020184258A1 WO 2020184258 A1 WO2020184258 A1 WO 2020184258A1 JP 2020008743 W JP2020008743 W JP 2020008743W WO 2020184258 A1 WO2020184258 A1 WO 2020184258A1
Authority
WO
WIPO (PCT)
Prior art keywords
information
game
web page
screen
user
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
PCT/JP2020/008743
Other languages
English (en)
French (fr)
Inventor
白井 良成
昌史 松田
泰恵 岸野
伸 水谷
敬之 須山
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NTT Inc
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to US17/438,336 priority Critical patent/US20220184500A1/en
Publication of WO2020184258A1 publication Critical patent/WO2020184258A1/ja
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/60Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
    • A63F13/69Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor by enabling or updating specific game elements, e.g. unlocking hidden features, items, levels or versions
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/35Details of game servers
    • A63F13/352Details of game servers involving special game server arrangements, e.g. regional servers connected to a national server or a plurality of servers managing partitions of the game world
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/35Details of game servers
    • A63F13/355Performing operations on behalf of clients with restricted processing capabilities, e.g. servers transform changing game scene into an encoded video stream for transmitting to a mobile phone or a thin client
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/80Special adaptations for executing a specific game genre or game mode
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/85Providing additional services to players
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units

Definitions

  • the present invention relates to a game realization method, a game realization device, and a program.
  • the inventor of the present application is paying attention to WWW as another place where he is living in real life.
  • WWW is used by many people via a Web browser, and office workers in particular spend a lot of time browsing the Web for the purpose of collecting information. In other words, it is no exaggeration to say that the WWW is a second living space for many people.
  • the WWW can be converted into a game, for example, it is possible to guide a person to a specific website by using a game event.
  • human computation using games is also feasible. Human computing is to solve problems that are difficult for computers to solve by using human processing power, and one of the methods is to make tasks into games and encourage them to work. (Non-Patent Document 1). For example, by incorporating the task of searching for specific information that is difficult for a computer into the task of in-game, the game operator may be able to collect a large amount of desired information at low cost.
  • Non-Patent Document 2 creates game content by linking with a hyperlink structure on the Web, but the game cannot be played on a Web browser that is used on a daily basis.
  • Patent Document 1 The invention using the add-on of the browser (Patent Document 1) satisfies the above requirements 1 and 2.
  • Patent Document 3 Although the game content changes in conjunction with the operation of a specific web page or web browser, it is only in line with the algorithm described in the program in advance, and if you want to change the linking method later. Needs to update add-ons, which is inefficient.
  • the present invention has been made in view of the above points, and an object of the present invention is to make it possible to efficiently realize a game on an arbitrary Web page.
  • the computer executes a display procedure and a control procedure for controlling processing according to a user's operation on the Web page after the screen is displayed.
  • FIG. 1 is a diagram for explaining an outline of the first embodiment.
  • a person who plays a game plays a game using a user terminal 10 having a Web browser 11 in which an add-on (extended function for the Web) is installed.
  • the add-on transmits information about the Web page and information about the user's operation (Web browsing history, etc.) to the game server 20 together with the user ID.
  • the game server 20 saves the transmitted information in the game DB 30 as needed, generates information for updating the game screen based on the received information, and returns the information to the add-on.
  • the add-on receives the information, it draws (updates) the game screen based on the information.
  • FIG. 2 is a diagram showing a hardware configuration example of the user terminal 10 according to the first embodiment.
  • the user terminal 10 of FIG. 2 has a drive device 100, an auxiliary storage device 102, a memory device 103, a CPU 104, an interface device 105, a display device 106, an input device 107, and the like, which are connected to each other by a bus B, respectively.
  • the program that realizes the processing in the user terminal 10 is provided by the recording medium 101 such as a CD-ROM.
  • the recording medium 101 storing the program is set in the drive device 100, the program is installed in the auxiliary storage device 102 from the recording medium 101 via the drive device 100.
  • the program does not necessarily have to be installed from the recording medium 101, and may be downloaded from another computer via the network.
  • the auxiliary storage device 102 stores the installed program and also stores necessary files, data, and the like.
  • the memory device 103 reads and stores the program from the auxiliary storage device 102 when the program is instructed to start.
  • the CPU 104 realizes a function related to the user terminal 10 according to a program stored in the memory device 103.
  • the interface device 105 is used as an interface for connecting to a network.
  • the display device 106 displays a programmatic GUI (Graphical User Interface) or the like.
  • the input device 107 is composed of a keyboard, a mouse, and the like, and is used for inputting various operation instructions.
  • FIG. 3 is a diagram showing a functional configuration example of the user terminal 10 and the game server 20 in the first embodiment.
  • the user terminal 10 includes a user information input unit 12, a login request unit 13, a browser state management unit 14, a browser information transmission unit 15, a screen information reception unit 16, a game screen drawing unit 17, a game operation management unit 18, and the like.
  • Each of these parts is realized by a process of causing the CPU 104 to execute one or more programs (for example, add-ons) installed in the user terminal 10.
  • the game server 20 has a login response unit 21, a user management unit 22, a browser information receiving unit 23, a game operation management unit 24, a DB management unit 25, a screen information transmitting unit 26, and the like.
  • Each of these parts is realized by a process in which one or more programs installed in the game server 20 are executed by the CPU of the game server 20.
  • the game server 20 also uses the game DB 30.
  • the game DB 30 can be realized by using, for example, an auxiliary storage device of the game server 20, a storage device that can be connected to the game server 20 via a network, or the like.
  • FIG. 4 is a sequence diagram for explaining an example of the processing procedure executed in the first embodiment.
  • the user information input unit 12 displays a login screen (FIG. 5) for inputting user information, and the user passes through the login screen. Accepts input of user information such as user ID and password from (S101). Subsequently, the login request unit 13 transmits the user information to the game server 20 (S102).
  • the user management unit 22 collates the user ID and password recorded in the game DB 30 with the user information to determine the success or failure of the login (S103). ). If the login is successful, the user management unit 22 saves the login information (user ID, etc.) in the session, and manages the user related to the user information as a login state for a certain period of time or until the Web browser 11 is closed. Subsequently, the login response unit 21 returns a response including the login determination result to the user terminal 10 (S104).
  • step S105 and subsequent steps are executed.
  • the browser state management unit 14 acquires information on the state of the Web browser 11 (hereinafter, referred to as "browser information") from the Web browser 11 (S105). Includes, for example, a part or all of the URL of the displayed Web page, the source code of the Web page, the hash value of the source code, the browsing history of the Web browser 11, the ID of the active tab, and the like). Is done. Subsequently, the browser information transmission unit 15 transmits the browser information to the game server 20 (S106).
  • the game operation management unit 24 determines the game of the user based on the browser information and the user information of the user related to the session in which the browser information is received.
  • the state (status) in is determined (S107). For example, the game operation management unit 24 acquires the history information of the game and the like stored in the game DB 30 in association with the user ID of the user via the DB management unit 25.
  • the game operation management unit 24 determines the state (for example, acquired points, etc.) of the user in the game based on the history information.
  • the game operation management unit 24 executes a process (hereinafter referred to as “game control process”) necessary for controlling the progress of the game based on the determination result, and transmits the process result to the screen information transmission unit 26.
  • Game control process a process necessary for controlling the progress of the game based on the determination result
  • the screen information transmission unit 26 Based on the processing result, the screen information transmission unit 26 generates information about the screen to be displayed on the user terminal 10 (hereinafter, referred to as “screen information”) (S109), and transmits the screen information to the user terminal 10. (S110).
  • the game screen drawing unit 17 displays a screen related to the game (hereinafter, referred to as "game screen”) (S111).
  • the game operation management unit 18 controls the processing according to the operation (S112). Subsequently, the game operation management unit 18 transmits information related to the operation (position of the mouse pointer, etc., hereinafter referred to as “operation information”) to the game server 20 via the browser state management unit 14 and the browser information transmission unit 15. (S113).
  • operation information includes, for example, a part of the operation target on the Web page, a character string of the operation target, and the like.
  • the game operation management unit 24 associates the operation information with the user ID and records it in the game DB 30 via the DB management unit 25 (S114). After that, steps S107 and subsequent steps are repeated. In this case, if it is determined that the game state of the user has changed based on the operation information (S107), new screen information (screen update information) is generated (S109), and the screen information is transmitted to the user terminal 10. It is transmitted (S110). As a result, the game screen is updated. The game progresses in this way.
  • step S105 when the Web page to be displayed is switched, step S105 and subsequent steps are re-executed.
  • the second embodiment will explain the differences from the first embodiment.
  • the points not particularly mentioned in the second embodiment may be the same as those in the first embodiment.
  • a small window (game screen) containing five English words with the question sentence "Find the following words! Is displayed in the upper right or upper left of the Web page.
  • the English words can be collected as text monsters captured by the user.
  • the browser state management unit 14 determines the URL of the web page and the full text (character string) displayed on the web page. ) Etc. are acquired from the Web browser 11 (S105).
  • the browser information transmission unit 15 transmits the browser information to the game server 20 (S106).
  • the game operation management unit 24 determines the user's information based on the browser information and the user information of the user related to the session in which the browser information is received.
  • the state of the text monster for example, the captured text monster (English word), etc.
  • the game operation management unit 24 extracts one or more character strings that form a part of the entire text included in the browser information as the game control process, and for each character string, the original language (here, here).
  • a translation from (Japanese) to another language (English in this case) is performed (S108).
  • the game operation management unit 24 performs morphological analysis of the entire text, randomly selects five words (Japanese character strings) from the results of the morphological analysis, and executes translation (Japanese-English conversion).
  • the screen information transmission unit 26 generates information including five English words and five Japanese character strings in the Web page corresponding to each English word as screen information (S109), and the screen information. Is returned to the user terminal 10 (S110).
  • the game screen drawing unit 17 uses a screen including a problem sentence included in the screen information (hereinafter, referred to as a "problem window") as a game screen.
  • An overlay is displayed on the Web page (S111).
  • FIG. 6 is a diagram showing a display example of the problem window.
  • the question sentence "Find the following words!” And five English words such as "computer”, “such”, “toward”, “latest” and “study” ( Hereinafter, it is referred to as "target English word”).
  • the script may be attached to the add-on in advance, or may be transmitted from the screen information transmitting unit 26 to the screen information receiving unit 16 together with the screen information in step S110, for example. Further, the listener may be registered in the source code of the Web page, for example.
  • the listener functions as a game operation management unit 18.
  • the game operation management unit 18 which is a listener performs a capture animation of a text monster related to the target English word (S112). For example, an animation in which an English word moves to the problem window w1 in an action like a caterpillar) is displayed.
  • FIG. 7 is a diagram for explaining an example of a text monster capture animation.
  • FIG. 7 shows a state in which the character string animation "computer” is displayed by clicking the Japanese character string "computer” corresponding to "computer” on the Web page P1.
  • the game operation management unit 18 uses the information indicating that the correct English word corresponding to the Japanese character string selected by the user is the text monster captured by the user as the operation information, and the browser state management unit 14 and the game operation management unit 18 It is transmitted to the game server 20 via the browser information transmission unit 15 (S113).
  • the game operation management unit 24 uses the English word as a text monster captured by the user via the DB management unit 25, and the user It is registered in the game DB 30 in association with the user ID of (S114).
  • step S107 and subsequent steps are executed.
  • step S107 it is determined that the user has captured a new text monster.
  • step S108 it is determined that the English word corresponding to the text monster should be removed from the question window w1.
  • step S109 screen information including four English words from which the English words have been removed and four Japanese character strings in the Web page corresponding to each English word is generated.
  • step S110 the screen information is transmitted to the user terminal 10.
  • step S111 the English word "computer" is deleted from the question window w1. The game is continued in this way.
  • the user when the user captures all the text monsters related to English words in the problem window w1, the user can newly capture the text monsters related to five English words by switching the Web page to be displayed on the Web browser 11. It may be a target. Alternatively, the user may display another Web page on the Web browser 11 and try to capture the five English words selected for the Web page before capturing all five English words.
  • the above game text monster
  • navigation inviting people to Web pages
  • human computation can also be realized.
  • the higher the difficulty level of English words (text monsters) the stronger the text monsters.
  • the English words displayed in the problem are not English words corresponding to the character strings randomly selected from the Japanese words constituting the Web page to be displayed, but are displayed according to a certain rule.
  • the game operation management unit 24 is configured, many users will visit the Web page in order to capture a strong text monster, and navigation will be realized.
  • one English word to be displayed as a problem at a time is set, the click of the Japanese character string corresponding to the English word is recorded, and the incorrect answer is transmitted to the game server 20 and recorded in the game DB 30. To do so. This is nothing more than collecting data on Japanese, which is easy for people to make mistakes with English words (human computing).
  • the text monster described above is a single player game, but each user assigns one or more text monsters (“computer” in FIG. 7) captured by himself / herself to an arbitrary Web page (pseudo). You may be able to occupy a web page.
  • a list of English words (text monsters) captured by the user is displayed in the question window w1 or in a window different from the question window w1, and one of the English words is selected from the list.
  • a user interface may be provided such that the selected English word can occupy the displayed Web page.
  • a window indicating that the Web page is occupied by another user may be displayed to prevent the occupation.
  • the URL of the Web page occupied by each user is stored in, for example, the game DB 30.
  • the user selects one or more text monsters from the text monsters that he / she has already captured, attacks the web page, and is owned by the other user. It is also possible to create a multiplayer game by stealing the Web page after a battle with a text monster.
  • FIG. 8 is a diagram showing an example of a battle screen of a text monster.
  • the area a1 indicates the URL of the Web page (hereinafter, referred to as “target page”) displayed by the user way.
  • Area a2 indicates the current date.
  • the area a3 is a list of text monsters (English words) selected by the user yamato who has already occupied the target page in order to defend the target page.
  • the area a4 is a list of text monsters (English words) selected by the user way to attack the target page.
  • the numerical value displayed next to each text monster (English word) is a value indicating the strength (combat ability) of each text monster based on the difficulty level of each English word, for example. Is.
  • the battle screen w2 is displayed by the game screen drawing unit 17 based on the screen information transmitted from the game server 20 in response to the user way's instruction to start the battle on the game screen displayed before the display of the battle screen w2, for example. Will be done.
  • the outcome of the battle may be calculated based on the strength of the text monster selected by each user.
  • the client user terminal 10
  • the game data of each user for example, the captured text monster and the occupied Web page data for each user
  • the game server 20 Therefore, such a multiplayer game can be realized.
  • the third embodiment will explain the differences from the second embodiment.
  • the points not particularly mentioned in the third embodiment may be the same as those in the second embodiment.
  • the full text of the Web page displayed on the user terminal 10 needs to be transmitted to the game server 20.
  • the entire text of the Web page is transmitted to the game server 20.
  • the full text of a specific Web page of a website on an intranet in a company is transmitted to a game server 20 installed outside the company, confidential information may be leaked.
  • Examples of Web pages that are not open to the public include Web pages on the intranet and Web pages that are limited to members (Web pages that can only be viewed by specific members).
  • a method of determining whether or not the character string or the like on the Web page being browsed by the user may be automatically transmitted to the game server 20 is disclosed.
  • FIG. 9 is a sequence diagram for explaining the processing procedure added in the third embodiment.
  • the browser information of the Web page is transmitted before step S105 or later is executed. Before), the processing procedure shown in FIG. 9 is executed each time.
  • the browser state management unit 14 calculates a hash value (hereinafter referred to as “hash value X”) of the source code (HTML) of the Web page (hereinafter referred to as “target page”) displayed by the Web browser 11. (S201). Subsequently, the browser information transmission unit 15 transmits the hash value X and the URL of the target page to the game server 20 (S202).
  • hash value X a hash value of the source code (HTML) of the Web page
  • target page displayed by the Web browser 11.
  • the game operation management unit 24 attempts to access the URL (acquire the source code of the target page from the URL) (S203). ). Subsequently, the game operation management unit 24 determines whether or not the target page is open to the public (hereinafter, referred to as “openness”) based on the access result (S204). Specifically, when the access fails due to a 404 error or the like (when the source code of the Web page cannot be obtained), the game operation management unit 24 determines that the target page is not open to the public.
  • step S204 If it is determined in step S204 that the target page is not open to the public, a response indicating that the game cannot be executed with respect to the target page is not executed after step S205, and a response is sent from the browser information receiving unit 23 to the user terminal 10. Will be replied.
  • the browser information transmitting unit 15 receives the response, it is not executed after step S105 in FIG.
  • the game operation management unit 24 uses the same algorithm as the browser state management unit 14 of the user terminal 10 to refer to the hash value of the source code of the Web page (hereinafter, referred to as "hash value Y". ) Is calculated (S205). Subsequently, the game operation management unit 24 determines the target page openness based on the comparison between the hash value X and the hash value Y (S206). Specifically, the game operation management unit 24 determines that the target page is open to the public if the hash value X and the hash value Y match, and otherwise determines that the target page is not open to the public. To do.
  • Step S206 is based on the premise that the publicly available Web page is displayed in the same way by anyone. That is, when the URL of a Web page that is not open to the public is accessed, the access itself is successful, but the Web page included in the response may differ between an accessible user and a non-accessible user. For example, an inaccessible user may be returned with a response that includes a Web page indicating that access is prohibited. Therefore, in the present embodiment, even when the access is successful, the openness of the target page is determined based on the identity of the acquired Web page.
  • the display contents of recent Web pages may differ depending on the type of Web browser and the display timing. For example, in a Web page in which an advertisement is embedded, a link to a different advertisement is embedded in the source code each time it is displayed. Therefore, in the above method, even if the Web page in which the advertisement is embedded is open to the public, it may be determined that the Web page is not open to the public due to the mismatch of hash values.
  • LSH locality-sensitive hashing
  • MD5 hash function
  • SHA hash function
  • LSH is a hash algorithm having a property that hash values of contents having a high degree of similarity are similar to each other.
  • the game operation management unit 24 compares the hash value X and the hash value Y, determines that the target page is open to the public if the similarity is equal to or higher than the threshold value, and if it is less than the threshold value. It may be determined that the target page is not open to the public.
  • minhash which is a kind of LSH
  • a web page in which an advertisement is embedded but is open to the public is open to the public by determining a similarity of about 90% as a threshold. It was possible to recognize that the Web page is being used and to distinguish between the Web page that is open to the public and the Web page that is not.
  • step S105 a response including the determination result in step S206 is returned from the browser information receiving unit 23 to the user terminal 10 (S207).
  • the browser state management unit 14 determines whether or not the execution of step S105 and subsequent steps can be performed based on the determination result. That is, if the determination result indicates that the target page is open to the public, the state management unit determines that the execution of step S105 and subsequent steps is possible. In this case, step S105 and subsequent steps are executed. On the other hand, if the determination result indicates that the target page is not open to the public, the state management unit determines that the execution after step S105 cannot be performed. In this case, step S105 and subsequent steps are not executed.
  • the participants (competitors) of the multiplayer online game are browsing the same web page by using the method for determining the identity of the web page described in the third embodiment.
  • a method of grouping by user will be described.
  • FIG. 10 is a diagram for explaining the fourth embodiment.
  • the browser information transmission unit 15 of the user terminal 10 of each user transmits the hash value (LSH) of the source code of the Web page being browsed by each user to the game server 20.
  • the hash value may be transmitted to the game server 20 at the same timing as in the third embodiment.
  • the game operation management unit 24 of the game server 20 can identify a group of users who are the target of the game on the same Web page by comparing the hash values related to each user. For example, if the similarity between the hash value (LSH) related to user A and the hash value (LSH) related to user B is equal to or greater than the threshold value, user A and user B are said to target the same Web page in the game. Can be judged.
  • the hash value related to each user may be registered in the game DB 30 in association with the user ID when the browser information receiving unit 23 receives the hash value. By doing so, even if it is not a real-time game (that is, even if each user plays the game asynchronously), it is possible to identify a group of users who are targeting the same Web page. Can be done.
  • the game operation management unit 24 may manage the currently logged-in user group as a participant of the game among the user group whose target is the same Web page.
  • the layout of the Web page may be different between the users. obtain. However, it is important that at least the source code of the Web page is the same (almost the same except for advertisements) in order to create a game that is closely linked to the Web content.
  • the determined Web page that is open to the public may be targeted for the multiplayer online game by the method shown in the third embodiment.
  • the display state (screen layout) of the user terminal 10 of a certain user in the Web browser 11 and the display state (screen layout) of the game server 20 are compared, and a Web page in which both are the same is used in a multiplayer online game. It may be a target. In this case, it is highly likely that the same screen layout will be displayed among a plurality of users.
  • the screen information of the game screen indicating that the user is waiting may be transmitted to the user terminal 10 of the user.
  • the game may be started among a plurality of users.
  • the screen layout of the same Web page on the user terminal 10 of each user may be transmitted to the game server 20, and the game operation management unit 24 may compare the layouts. Only when each screen layout is the same, the start of the game may be permitted between the users.
  • the operation of the game can be performed without changing the program (for example, add-on) on the user terminal 10 side. It can be changed to some extent. For example, in a text monster, when displaying three English words instead of five, or displaying French words instead of English, the screen information that displays three English words is the screen information transmitter.
  • the game operation management unit 24 may be modified so that it is transmitted to the user terminal 10 by 26. This allows the user to update the game without having to reinstall add-ons and the like.
  • the game server 20 linked with the add-on of the Web browser 11 manages the game, it can be expected that the update frequency on the client side will decrease (that is, efficiency will be improved) when the operation of the game is changed. Further, by managing the data on the game server 20 side, it becomes possible to easily realize human computation and user navigation.
  • the game server 20 is an example of an information processing device.
  • the browser information is an example of the first information.
  • the screen information is an example of the second information and the fourth information.
  • the operation information is an example of the third information.
  • the hash value X is an example of the first hash value.
  • the hash value Y is an example of the second hash value.
  • the user terminal 10 is an example of a game realization device.
  • the browser information transmission unit 15 is an example of a transmission unit.
  • the screen information receiving unit 16 is an example of a receiving unit.
  • the game screen drawing unit 17 is an example of a display control unit.
  • the game operation management unit 18 is an example of a control unit.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

Webブラウザに表示されているWebページに関する情報を含む第1の情報をネットワークを介して接続される情報処理装置へ送信する第1の送信手順と、前記第1の情報に基づいて前記情報処理装置によって生成される、前記Webページを用いたゲームの画面に関する第2の情報を受信する第1の受信手順と、前記第2の情報に基づいて前記画面を表示する表示手順と、前記画面の表示後における前記Webページに対するユーザによる操作に応じた処理を制御する制御手順と、をコンピュータが実行することで、任意のWebページ上でのゲームを効率的に実現可能とする。

Description

ゲーム実現方法、ゲーム実現装置及びプログラム
 本発明は、ゲーム実現方法、ゲーム実現装置及びプログラムに関する。
 位置情報をベースに現実世界をゲーム化する位置情報ゲーム(Location-basedgame)は既に数多くリリースされているが、その中でもポケモンGoはこれまでゲームに積極的ではなかった中高年を含めた多くのユーザを獲得した。また、実際に生活をしている空間上の場所とゲームをリンクさせることで、ゲームのイベントを利用してユーザを特定の場所(例えばマクドナルドの店舗)に誘導することが可能となる。これは、ユーザを店舗に誘導したいものにとっては大きなメリットとなるため、店舗に人を呼び込みたい会社がポケモンGoのスポンサーになるというビジネスモデル(スポンサード・ロケーション)が生まれている。
特開2013-025381号公報
鹿島久嗣,馬場雪乃: ヒューマンコンピュテーション概説(<特集>ヒューマンコンピュテーションとクラウドソーシング),人工知能,29 巻,1 号,2014 ハイパーリンク空間からのネットゲームコンテンツ生成支援- SILHOUET: シルエット-, 平成15 年度未踏ソフトウェア創造事業
 本願発明者は、実生活を行っているもう一つの場所としてWWWに着目している。WWWは、Webブラウザを介して多くの人が利用しており、特にオフィスワーカーは多くの時間を情報収集などの目的でWeb閲覧に費やしている。すなわち、WWWは多くの人にとって第二の生活空間といっても過言ではない。WWWをゲーム化できれば、例えば、ゲームのイベントを利用して特定のWebサイトに人を誘導するといったことが可能となる。また、ゲームを利用したヒューマンコンピュテーションも実現可能である。ヒューマンコンピュテーションとは、コンピュータにとって解くことが困難な課題を、人間の処理能力を利用して解決することであり、その手法の一つとして、タスクをゲーム化して作業を促すといったことが行われている(非特許文献1)。例えば、コンピュータには難しい特定の情報を探す作業をゲーム内の作業に組み込むことで、ゲーム運営者は低コストで目的の情報を大量に集めることが可能かもしれない。
 上記を実現するために、我々は以下の要件を実現すべきと考えている。
1.日常的に利用しているWebブラウザ上でゲームをプレイできる。
2.任意のWebページ上でゲームをプレイできる。
3.Webページ群のURLやコンテンツと連動してゲームの内容が変化する。
 まず、実生活の延長線上にゲームを組み込んでプレイしてもらうために、ユーザが日々使っているWebブラウザ上でゲームをプレイできるべきである。また、ポケモンGoが任意の場所でゲームをプレイできるようにしたように、任意のWebページ上でゲームをできるようにする必要がある。そして、ポケモンGoが、場所に応じてゲームのコンテンツを変化させているように(例えば場所によって出現するモンスターが変わる、海に近い地域では特定のモンスターが出現しやすいなど)、Webページ群のコンテンツに連動してゲームの内容が変化するのが良いと考えられる。
 しかしながら、特定のWebページにアクセスしてゲームをプレイするブラウザゲームは、上記1の要件は満たしているが、同じゲームを任意のWebページ上でゲームをプレイすることはできない。SILHOUET(非特許文献2)は、Webのハイパーリンク構造とリンクしてゲームのコンテンツを作成するが、日常的に利用しているWebブラウザ上ではゲームをプレイできない。
 ブラウザのアドオンを利用した発明(特許文献1)は、上記要件1、2を満たしている。一方、3に関しては特定のWebページやWebブラウザの操作に連動してゲーム内容は変化するものの、あくまで事前にプログラムに記載されたアルゴリズムに沿ったものであり、連動の仕方を後から変更したい場合には、アドオンを更新する必要があり非効率である。
 本発明は、上記の点に鑑みてなされたものであって、任意のWebページ上でのゲームを効率的に実現可能とすることを目的とする。
 そこで上記課題を解決するため、Webブラウザに表示されているWebページに関する情報を含む第1の情報をネットワークを介して接続される情報処理装置へ送信する第1の送信手順と、前記第1の情報に基づいて前記情報処理装置によって生成される、前記Webページを用いたゲームの画面に関する第2の情報を受信する第1の受信手順と、前記第2の情報に基づいて前記画面を表示する表示手順と、前記画面の表示後における前記Webページに対するユーザによる操作に応じた処理を制御する制御手順と、をコンピュータが実行する。
 任意のWebページ上でのゲームを効率的に実現可能とすることができる。
第1の実施の形態の概要を説明するための図である。 第1の実施の形態におけるユーザ端末10のハードウェア構成例を示す図である。 第1の実施の形態におけるユーザ端末10及びゲームサーバ20の機能構成例を示す図である。 第1の実施の形態において実行される処理手順の一例を説明するためのシーケンス図である。 ログイン画面の表示例を示す図である。 問題ウィンドウの表示例を示す図である。 テキストモンスターの捕獲アニメーションの一例を説明するための図である。 テキストモンスターの戦闘画面の一例を示す図である。 第3の実施の形態において追加される処理手順を説明するためのシーケンス図である。 第4の実施の形態を説明するための図である。
 以下、図面に基づいて第1の実施の形態を説明する。図1は、第1の実施の形態の概要を説明するための図である。
 ゲームを行う人(以下、「ユーザ」という。)は、アドオン(Web用の拡張機能)がインストールされたWebブラウザ11を有するユーザ端末10を用いてゲームをプレイする。Webブラウザ11がWebページを読み込むと、アドオンはユーザIDとともにWebページに関する情報やユーザの操作に関する情報(Web閲覧履歴等)をゲームサーバ20に送信する。ゲームサーバ20は送信されてきた情報を必要に応じゲームDB30に保存するとともに、受信した情報に基づいてゲーム画面を更新するための情報を生成し、当該情報をアドオンに返信する。アドオンは、当該情報を受信すると、当該情報に基づいてゲーム画面を描画(更新)する。
 図2は、第1の実施の形態におけるユーザ端末10のハードウェア構成例を示す図である。図2のユーザ端末10は、それぞれバスBで相互に接続されているドライブ装置100、補助記憶装置102、メモリ装置103、CPU104、インタフェース装置105、表示装置106、及び入力装置107等を有する。
 ユーザ端末10での処理を実現するプログラムは、CD-ROM等の記録媒体101によって提供される。プログラムを記憶した記録媒体101がドライブ装置100にセットされると、プログラムが記録媒体101からドライブ装置100を介して補助記憶装置102にインストールされる。但し、プログラムのインストールは必ずしも記録媒体101より行う必要はなく、ネットワークを介して他のコンピュータよりダウンロードするようにしてもよい。補助記憶装置102は、インストールされたプログラムを格納すると共に、必要なファイルやデータ等を格納する。
 メモリ装置103は、プログラムの起動指示があった場合に、補助記憶装置102からプログラムを読み出して格納する。CPU104は、メモリ装置103に格納されたプログラムに従ってユーザ端末10に係る機能を実現する。インタフェース装置105は、ネットワークに接続するためのインタフェースとして用いられる。表示装置106はプログラムによるGUI(Graphical User Interface)等を表示する。入力装置107はキーボード及びマウス等で構成され、様々な操作指示を入力させるために用いられる。
 図3は、第1の実施の形態におけるユーザ端末10及びゲームサーバ20の機能構成例を示す図である。図3において、ユーザ端末10は、ユーザ情報入力部12、ログイン要求部13、ブラウザ状態管理部14、ブラウザ情報送信部15、画面情報受信部16、ゲーム画面描画部17及びゲーム操作管理部18等を有する。これら各部は、ユーザ端末10にインストールされた1以上のプログラム(例えば、アドオン)が、CPU104に実行させる処理により実現される。
 一方、ゲームサーバ20は、ログイン応答部21、ユーザ管理部22、ブラウザ情報受信部23、ゲーム動作管理部24、DB管理部25及び画面情報送信部26等を有する。これら各部は、ゲームサーバ20にインストールされた1以上のプログラムが、ゲームサーバ20のCPUに実行させる処理により実現される。ゲームサーバ20は、また、ゲームDB30を利用する。ゲームDB30は、例えば、ゲームサーバ20の補助記憶装置、又はゲームサーバ20にネットワークを介して接続可能な記憶装置等を用いて実現可能である。
 以下、ユーザ端末10及びゲームサーバ20が実行する処理手順について説明する。図4は、第1の実施の形態において実行される処理手順の一例を説明するためのシーケンス図である。
 ユーザ端末10において、Webブラウザ11の起動に応じてアドオンが起動されと、ユーザ情報入力部12が、ユーザ情報の入力用のログイン画面(図5)を表示して、当該ログイン画面を介してユーザからユーザID及びパスワード等のユーザ情報の入力を受け付ける(S101)。続いて、ログイン要求部13は、当該ユーザ情報をゲームサーバ20に送信する(S102)。
 ゲームサーバ20のログイン応答部21が当該ユーザ情報を受信すると、ユーザ管理部22が、ゲームDB30に記録されているユーザID及びパスワードと当該ユーザ情報とを照合してログインの成否を判定する(S103)。ユーザ管理部22は、ログインに成功すればログイン情報(ユーザID等)をセッションに保存し、一定時間、又はWebブラウザ11が閉じられるまで、当該ユーザ情報に係るユーザをログイン状態として管理する。続いて、ログイン応答部21は、ログインの判定結果を含む応答をユーザ端末10に返信する(S104)。
 ログイン要求部13が、当該応答を受信し、当該応答がログインを示すものであれば、ステップS105以降が実行される。
 Webブラウザ11に任意のWebページが表示されると、ブラウザ状態管理部14は、Webブラウザ11の状態に関する情報(以下、「ブラウザ情報という。」をWebブラウザ11から取得する(S105)。ブラウザ情報には、例えば、表示中のWebページのURL、Webページのソースコード、当該ソースコードのハッシュ値、Webブラウザ11の閲覧履歴、及びactiveなタブのID等のうちの一部又は全部)が含まれる。続いて、ブラウザ情報送信部15は、当該ブラウザ情報をゲームサーバ20へ送信する(S106)。
 ゲームサーバ20のブラウザ情報受信部23がブラウザ情報を受信すると、ゲーム動作管理部24は、当該ブラウザ情報と、当該ブラウザ情報が受信されたセッションに係るユーザのユーザ情報とに基づいて当該ユーザのゲームでの状態(ステータス)を判定する(S107)。例えば、ゲーム動作管理部24は、当該ユーザのユーザIDに関連付けられてゲームDB30に記憶されている、当該ゲームの履歴情報等をDB管理部25を介して取得する。ゲーム動作管理部24は、当該履歴情報に基づいて、当該ユーザのゲームにおける状態(例えば、獲得ポイント等)を判定する。
 続いて、ゲーム動作管理部24は、判定結果に基づいて、ゲームの進行を制御するために必要な処理(以下、「ゲーム制御処理」という。)を実行し、処理結果を画面情報送信部26へ出力する(S108)。画面情報送信部26は、当該処理結果に基づいて、ユーザ端末10に表示すべき画面に関する情報(以下、「画面情報」という。)を生成し(S109)、当該画面情報をユーザ端末10へ送信する(S110)。ユーザ端末10の画面情報受信部16が当該画面情報を受信すると、ゲーム画面描画部17がゲームに関する画面(以下、「ゲーム画面」という。)を表示する(S111)。
 ゲーム画面の表示後に、当該ゲーム画面に関連する操作がユーザによってWebページに対して行われると、ゲーム操作管理部18は、当該操作に応じた処理を制御する(S112)。続いて、ゲーム操作管理部18は、当該操作に関する情報(マウスポインタの位置等。以下、「操作情報」という。)を、ブラウザ状態管理部14及びブラウザ情報送信部15を経由してゲームサーバ20へ送信する(S113)。なお、操作情報には、例えば、Webページにおける操作対象の部分、又は操作対象の文字列等が含まれる。
 ゲームサーバ20のブラウザ情報受信部23が当該操作情報を受信すると、ゲーム動作管理部24は、当該操作情報をユーザIDに関連付けてDB管理部25を経由してゲームDB30に記録する(S114)。その後、ステップS107以降が繰り返される。この場合、当該操作情報に基づいてユーザのゲーム状態が変化したと判定されれば(S107)、新たな画面情報(画面の更新情報)が生成され(S109)、当該画面情報がユーザ端末10に送信される(S110)。その結果、ゲーム画面が更新される。このようにしてゲームが進行する。
 また、表示対象のWebページが切り替えられた場合、ステップS105以降が再実行される。
 次に、第2の実施の形態について説明する。第2の実施の形態では第1の実施の形態と異なる点について説明する。第2の実施の形態において特に言及されない点については、第1の実施の形態と同様でもよい。
 第2の実施の形態では、以下のようなゲーム(以下、「テキストモンスター」という。)に基づいて具体的に処理手順を説明する。
 ユーザがログインに成功してゲームが開始されから任意のWebページがWebブラウザ11によって表示されると、「以下の単語を探せ!」という問題文とともに5つの英単語を含む小さなウィンドウ(ゲーム画面)がWebページの右上又は左上等に表示される。ユーザは、当該Webページ上で、当該5つの英単語のうちのいずれかの英単語に対応する日本語の文字列をマウスでクリックする。クリックされた日本語文字列が、英単語の和訳である場合(正解の場合)には、クリックされた日本語文字列から当該英単語がキャラクターとして浮かび上がり、当該キャラクターが生物的アニメーションとともに当該ウィンドウに移動する。当該英単語はユーザが捕獲したテキストモンスターとしてコレクションできる。
 上記のようなゲーム(テキストモンスター)を図4の処理手順に当てはめると以下のようになる。なお、以下においては、第1の実施の形態と異なる点について述べる。
 ログインの成功後にユーザの操作に基づいてWebブラウザ11に任意のWebページが表示されると、ブラウザ状態管理部14は、当該WebページのURL及び当該Webページに表示されているテキスト全文(文字列)等を含むブラウザ情報をWebブラウザ11から取得する(S105)。ブラウザ情報送信部15は、当該ブラウザ情報をゲームサーバ20に送信する(S106)。
 ゲームサーバ20のブラウザ情報受信部23が当該ブラウザ情報を受信すると、ゲーム動作管理部24は、当該ブラウザ情報と、当該ブラウザ情報が受信されたセッションに係るユーザのユーザ情報とに基づいて当該ユーザのテキストモンスターでの状態(例えば、捕獲済みのテキストモンスター(英単語)等)を判定する(S107)。続いて、ゲーム動作管理部24は、ゲーム制御処理として、当該ブラウザ情報に含まれるテキスト全文の一部を構成する1以上の文字列を抽出し、当該各文字列について、元の言語(ここでは日本語)から別の言語(ここでは英語)への翻訳を実行する(S108)。例えば、ゲーム動作管理部24は、当該テキスト全文を形態素解析し、形態素解析をした結果からランダムに5つの単語(日本語文字列)を選んで翻訳(和英変換)を実行する。
 続いて、画面情報送信部26は、5つの英単語と、当該各英単語に対応するWebページ内の5つの日本語文字列とを含む情報を画面情報として生成し(S109)、当該画面情報をユーザ端末10へ返信する(S110)。
 ユーザ端末10の画面情報受信部16が当該画面情報を受信すると、ゲーム画面描画部17は、当該画面情報に含まれる問題文等を含む画面(以下、「問題ウィンドウ」という。)をゲーム画面としてWebページ上にオーバーレイ表示する(S111)。
 図6は、問題ウィンドウの表示例を示す図である。図6に示される問題ウィンドウw1には、「以下の単語を探せ!」という問題文と、「computer」、「such」、「toward」、「latest」及び「study」等の5つの英単語(以下、「対象英単語」という。)が含まれている。
 ゲーム画面描画部17は、また、スクリプト(例えば、javascript(登録商標))を用いて、Webページのソースコードにおいて各対象英単語に対応する日本語文字列の部分を探索し、当該部分に<span>タグを挿入する(当該部分を<span id=“word0”>という開始タグと、</span>という終了タグとで囲む(但し、「word0」は、対象英単語ごとに異なる文字列とする))と共に、当該部分に対するマウスのクリックイベントを取得するリスナーを生成する。なお、当該スクリプトは、アドオンに予め添付されていてもよいし、例えば、ステップS110において画面情報と共に画面情報送信部26から画面情報受信部16へ送信されてもよい。また、リスナーは、例えば、Webページのソースコードに登録されてもよい。なお、当該リスナーは、ゲーム操作管理部18として機能する。
 Webページ上において、ユーザが、いずれかの対象英単語に対応する日本語文字列をクリックすると(S112)、リスナーであるゲーム操作管理部18が、当該対象英単語に係るテキストモンスターの捕獲アニメーション(例えば英単語が芋虫のような動作で問題ウィンドウw1へ移動するアニメーション)を表示する。
 図7は、テキストモンスターの捕獲アニメーションの一例を説明するための図である。図7では、「computer」に対応する「コンピュータ」という日本語文字列がWebページP1上でクリックされたことにより、「computer」という文字列アニメーションが表示されている状態が示されている。
 続いて、ゲーム操作管理部18は、ユーザによって選択された日本語文字列に対応する正解の英単語がユーザの捕獲したテキストモンスターであることを示す情報を操作情報として、ブラウザ状態管理部14及びブラウザ情報送信部15を経由してゲームサーバ20へ送信する(S113)。
 ゲームサーバ20のブラウザ情報受信部23が当該操作情報を受信すると、ゲーム動作管理部24は、DB管理部25を経由して、当該英単語を、当該ユーザが捕獲したテキストモンスターでとして、当該ユーザのユーザIDに関連付けてゲームDB30に登録する(S114)。
 続いてステップS107以降が実行される。この際、ステップS107では、ユーザが新たなテキストモンスターを捕獲したことが判定される。ステップS108では、当該テキストモンスターに対応する英単語を問題ウィンドウw1から除去すべきことが判定される。ステップS109では、当該英単語が除去された4つの英単語と、当該各英単語に対応するWebページ内の4つの日本語文字列とを含む画面情報が生成される。ステップS110では、当該画面情報がユーザ端末10へ送信される。その結果、ステップS111において、問題ウィンドウw1から「computer」という英単語が削除される。このようにしてゲームが継続される。例えば、ユーザは、問題ウィンドウw1内の全ての英単語に係るテキストモンスターを捕獲した場合、Webブラウザ11での表示対象のWebページを切り替えることで、新たに5つの英単語に係るテキストモンスターを捕獲対象としてもよい。又は、ユーザは、5つの全ての英単語を捕獲する前に、他のWebページをWebブラウザ11に表示し、当該Webページに関して選択される5つの英単語の捕獲を試みてもよい。
 なお、上記のゲーム(テキストモンスター)を改良することで、ナビゲーション(Webページへの人の呼び込み)やヒューマンコンピュテーションを実現することもできる。例えば、英単語(テキストモンスター)の難易度が高いほど、テキストモンスターが強いといった特徴づけをする。また、問題に表示される英単語も表示対象のWebページを構成する日本語からランダムに選択された文字列に対応する英単語ではなく、或る一定の法則に従って表示されるようにする。特定のWebページでは、難易度が高い英単語が出現しやすいように(換言すれば、特定のWebページの日本語文字列に対応する英単語の難易度が高くなるように)ゲームサーバ20のゲーム動作管理部24を構成すれば、多くのユーザが強いテキストモンスターを捕獲するために当該Webページを訪れることになり、ナビゲーションが実現される。
 また、例えば、一度に問題として表示する英単語を1つとし、その英単語に対応する日本語文字列のクリックを記録し、不正解も含めてゲームサーバ20に送信してゲームDB30に記録するようにする。これは、英単語に対して人が誤りやすい日本語に関するデータを収集していることに他ならない(ヒューマンコンピュテーション)。
 また、上記において説明したテキストモンスターは、シングルプレイヤーゲームであるが、各ユーザが、自らが捕獲した1以上のテキストモンスター(図7における“computer”)を任意のWebページに割り当てることで(疑似的に)Webページを占領できるようにしてもよい。この場合、例えば、問題ウィンドウw1内に又は問題ウィンドウw1とは別のウィンドウに、ユーザが捕獲済みの英単語(テキストモンスター)の一覧が表示され、当該一覧の中からいずれかの英単語が選択されると、選択された英単語によって表示中のWebページを占領できるといったユーザインタフェースが提供されてもよい。但し、既に他のユーザによって占領されているWebページを表示中の場合には、当該Webページが他のユーザによって占領されていることを示すウィンドウが表示され、占領が阻害されてもよい。なお、各ユーザが占領しているWebページのURLは、例えば、ゲームDB30において記憶される。
 表示中のWebページが他のユーザによって既に占領されている場合、ユーザは、自らが既に捕獲したテキストモンスターの中から1以上のテキストモンスターを選んで当該Webページに攻め込み、当該他のユーザの保有するテキストモンスターとの戦闘の末、当該Webページを奪い取るといったマルチプレイヤーゲーム化も可能である。
 図8は、テキストモンスターの戦闘画面の一例を示す図である。図8に示される戦闘画面w2において、領域a1は、ユーザwayが表示中のWebページ(以下、「対象ページ」という。)のURLを示す。領域a2は、現在の日付を示す。領域a3は、既に対象ページを占領しているユーザyamatoが対象ページを守備するために選択したテキストモンスター(英単語)の一覧である。領域a4は、ユーザwayが、対象ページを攻撃するために選択したテキストモンスター(英単語)の一覧である。なお、領域a3及び領域a4において、各テキストモンスター(英単語)の横に表示されている数値は、例えば、各英単語の難易度等に基づく各テキストモンスターの強さ(戦闘能力)を示す値である。
 戦闘画面w2は、例えば、戦闘画面w2の表示前に表示されていたゲーム画面に対するユーザwayによる戦闘の開始指示に応じてゲームサーバ20から送信される画面情報に基づいてゲーム画面描画部17によって表示される。戦闘の結果は、各ユーザによって選択されたテキストモンスターの強さに基づいて計算されてもよい。
 このように、クライアント(ユーザ端末10)がアドオンを有するサーバクライアント型とすることで、ゲームサーバ20上で各ユーザのゲームデータ(例えば、ユーザごとの捕獲テキストモンスターや占領Webページのデータ)を管理できるため、このようなマルチプレイヤーゲームも実現可能となる。
 次に、第3の実施の形態について説明する。第3の実施の形態では第2の実施の形態と異なる点について説明する。第3の実施の形態において特に言及されない点については、第2の実施の形態と同様でもよい。
 第2の実施の形態のようなゲームでは、ユーザ端末10に表示されたWebページのテキスト全文がゲームサーバ20に送信される必要がある。しかし、ユーザが、一般公開されていないWebページを閲覧している際に、当該Webページのテキスト全文がゲームサーバ20に送信されるのは問題となる場合がある。例えば、企業内のイントラネット上にあるWebサイトの特定のWebページのテキスト全文が社外に設置されたゲームサーバ20に送信されてしまう場合、機密情報が漏洩する可能性が有る。一般公開されていないWebページとしては、このようなイントラネット上のWebページや、会員限定のWebページ(特定の会員しか閲覧できないようなWebページ)などが挙げられる。
 そこで、第3の実施の形態では、ユーザが閲覧中のWebページ上の文字列等をゲームサーバ20に自動送信してもよいか否かを判定する方法が開示される。
 図9は、第3の実施の形態において追加される処理手順を説明するためのシーケンス図である。第3の実施の形態では、アドオンによってゲームが起動されている状態で任意のWebページがWebブラウザ11に読み込まれると、ステップS105以降が実行される前(当該Webページのブラウザ情報が送信される前)に、毎回、図9に示される処理手順が実行される。
 ブラウザ状態管理部14は、Webブラウザ11によって表示されているWebページ(以下、「対象ページ」という。)のソースコード(HTML)のハッシュ値(以下、「ハッシュ値X」という。)を算出する(S201)。続いて、ブラウザ情報送信部15は、ハッシュ値X及び対象ページのURLをゲームサーバ20へ送信する(S202)。
 ゲームサーバ20のブラウザ情報受信部23が、ハッシュ値X及び当該URLを受信すると、ゲーム動作管理部24は、当該URLへのアクセス(当該URLからの対象ページのソースコードの取得)を試みる(S203)。続いて、ゲーム動作管理部24は、アクセス結果に基づき、対象ページが一般公開されているか否か(以下、「公開性」という。)を判定する(S204)。具体的には、404エラー等でアクセスに失敗した場合(Webページのソースコードを取得できなかった場合)、ゲーム動作管理部24は、対象ページは一般公開されていないと判定する。
 ステップS204において、対象ページが一般公開されていないと判定された場合、ステップS205以降は実行されずに、対象ページに関してゲームを実行できないことを示す応答が、ブラウザ情報受信部23からユーザ端末10へ返信される。ブラウザ情報送信部15が当該応答を受信した場合、図4のステップS105以降は実行されない。
 一方、Webページを取得できた場合、ゲーム動作管理部24は、ユーザ端末10のブラウザ状態管理部14と同じアルゴリズムで、当該Webページのソースコードのハッシュ値(以下、「ハッシュ値Y」という。)を算出する(S205)。続いて、ゲーム動作管理部24は、ハッシュ値Xとハッシュ値Yとの比較に基づき、対象ページ公開性を判定する(S206)。具体的には、ゲーム動作管理部24は、ハッシュ値Xとハッシュ値Yとが一致すれば対象ページは一般公開されていると判定し、そうでなければ対象ページは一般公開されていないと判定する。
 ステップS206は、一般公開されているWebページは誰が見ても同じように表示されるという前提に基づく。すなわち、一般公開されていないWebページのURLにアクセスした場合、アクセス自体には成功するが、応答に含まれるWebページが、アクセス可能なユーザとそうでないユーザとで異なる可能性が有る。例えば、アクセスできないユーザには、アクセスの禁止を示すWebページを含む応答が返信される可能性が有る。そこで、本実施の形態では、アクセスに成功した場合であっても、取得されたWebページの同一性に基づいて、対象ページの公開性が判定される。
 但し、最近のWebページは、Webブラウザの種類や表示のタイミング等によって表示内容が異なる場合がある。例えば、広告が埋め込まれたWebページは、表示されるたびに異なる広告へのリンクがソースコードに埋め込まれる。したがって、上記の方法では、広告が埋め込まれたWebページは、一般公開されていてもハッシュ値の不一致により、一般公開されていないと判定される可能性がある。
 そこで、ハッシュ値の算出に利用するハッシュ関数として、MD5やSHAなどのような広く利用されているハッシュ関数ではなく、局所性鋭敏型ハッシュ(LSH:locality sensitive hashing)が利用されてもよい。LSHは、類似度が高いコンテンツのハッシュ値同士は類似するという性質を有するハッシュアルゴリズムである。LSHを用いる場合、ゲーム動作管理部24は、ハッシュ値Xとハッシュ値Yとを比較し、類似度が閾値以上であれば、対象ページが一般公開されていると判定し、閾値未満であれば対象ページが一般公開されていないと判定してもよい。
 なお、本願発明者が、LSHの一種であるminhashを用いて確認したところ、類似度90%程度を閾値として判定することで、広告が埋め込まれているが一般公開されているWebページを一般公開されているWebページと認識し、一般公開されているWebページとそうでないWebページとをおおよそ正しく切り分けることができた。
 続いて、ステップS206の判定結果を含む応答がブラウザ情報受信部23からユーザ端末10へ返信される(S207)。ユーザ端末10のブラウザ情報送信部15が当該応答を受信すると、ブラウザ状態管理部14は、当該判定結果に基づいて、ステップS105以降の実行の可否を判定する。すなわち、当該判定結果が、対象ページが一般公開されていることを示すものであれば、状態管理部は、ステップS105以降の実行は可能であると判定する。この場合、ステップS105以降が実行される。一方、当該判定結果が、対象ページが一般公開されていないことを示すものであれば、状態管理部は、ステップS105以降の実行はできない判定する。この場合、ステップS105以降が実行されない。
 上述したように、第3の実施の形態によれば、一般公開されていないWebページに関する情報が外部に漏洩する可能性を低下させることができる。
 次に、第4の実施の形態について説明する。第4の実施の形態では上記各実施の形態と異なる点について説明する。第4の実施の形態において特に言及されない点については、記各実施の形態と同様でもよい。
 第4の実施の形態では、第3の実施の形態において説明したWebページの同一性の判定方法を用いて、マルチプレイヤーオンラインゲームの参加者(対戦者)を、同じWebページを閲覧しているユーザごとにグループ分けする方法について説明する。
 図10は、第4の実施の形態を説明するための図である。図10において、各ユーザ(ユーザA及びユーザB)のユーザ端末10のブラウザ情報送信部15は、各ユーザが閲覧中のWebページのソースコードのハッシュ値(LSH)をゲームサーバ20に送信する。ゲームサーバ20へのハッシュ値の送信は、第3の実施の形態と同じタイミングで行われてもよい。
 ゲームサーバ20のゲーム動作管理部24は、各ユーザに係るハッシュ値を比較することで、同一のWebページをゲームの対象としているユーザ群を特定することができる。例えば、ユーザAに係るハッシュ値(LSH)と、ユーザBに係るハッシュ値(LSH)との類似度が閾値以上であれば、ユーザA及びユーザBは、同じWebページをゲームの対象としていると判定できる。なお、各ユーザに係るハッシュ値は、ブラウザ情報受信部23がハッシュ値を受信した際に、ユーザIDに関連付けてゲームDB30に登録しておけばよい。そうすることで、リアルタイムゲームでない場合であっても(すなわち、各ユーザがゲームをするタイミングが非同期である場合であっても)、同一のWebページをゲームの対象としているユーザ群を特定することができる。
 なお、リアルタイムゲームの場合、ゲーム動作管理部24は、同一のWebページをゲームの対象としているユーザ群の中で、現在ログイン中のユーザ群を、当該ゲームの参加者として管理すればよい。
 マルチプレイヤーオンラインゲームについて、同一のWebページを対象としているユーザ群ごとにグループを分けることによって、リアルタイムゲームであれば、各参加者の背景が異なることによる不整合の発生を回避することができる。
 また、リアルタイムゲームでなくても参加者間の整合性及び公平性を担保することができる。例えば、シムシティのようなゲームにおいて、或るユーザがWebページを背景としてゲームオブジェクトを配置したとする。これを別のユーザが見たときに、Webページの表示が同一でないと、Webページの背景とゲームオブジェクトの位置がずれてしまう。本実施の形態によれば、このような不整合が解消される可能性を高めることができる。また、シムシティのようなゲームでは、背景となるWebページによって、有利不利(街の作りやすさの違い)が発生する。本実施の形態のように、競争相手を同じWebページを対象としているユーザ群に限定すれば、背景(Webページ)の違いによる不公平を解消することができる。
 なお、Webブラウザ11のバージョンや、Webブラウザ11の機能によって拡大縮小しているかなどによって、各ユーザがゲームの対象としているWebページが同じであってもユーザ間においてWebページのレイアウトのずれは起こり得る。但し、少なくともWebページのソースコードが(広告などを除いてほぼ)同一であるということは、Webコンテンツと密接にリンクしたゲームを制作するうえで重要であると考える。
 また、第3の実施の形態に示した方法によって、一般公開されている判定されたWebページをマルチプレイヤーオンラインゲームの対象としてもよい。更に、或るユーザのユーザ端末10のWebブラウザ11における表示状態(画面レイアウト)と、ゲームサーバ20における表示状態(画面レイアウト)とが比較され、両者が同じであるWebページをマルチプレイヤーオンラインゲームの対象としてもよい。この場合は、複数のユーザ間で同じ画面レイアウトが表示される可能性が高いと考えられるからである。
 マルチプレイヤーオンラインゲームの対象となるWebページを閲覧中のユーザが一人しかいない場合、当該ユーザのユーザ端末10に対しては待機中を示すゲーム画面の画面情報が送信されればよい。他のユーザが当該Webページを対象としてゲームを開始した際に、複数のユーザ間で当該ゲームが開始されるようにしてもよい。この際、各ユーザのユーザ端末10における同一のWebページの画面レイアウトがゲームサーバ20に送信され、ゲーム動作管理部24が各レイアウトを比較してもよい。各画面レイアウトが同じである場合に限り、当該ユーザ間でのゲームの開始が許可されるようにしてもよい。
 なお、上記各実施の形態では、ゲームサーバ20をゲーム動作管理部24として機能させるプログラムを修正することで、ユーザ端末10側のプログラム(例えば、アドオン)を変更せずに、ゲームの動作を或る程度変更することができる。例えば、テキストモンスターにおいて、英単語を5つではなく3つ表示するようにしたり、英語ではなくフランス語の単語を表示するようにしたりする場合、英単語を3つ表示する画面情報が画面情報送信部26によってユーザ端末10へ送信されるように、ゲーム動作管理部24を修正すればよい。これにより、ユーザがいちいちアドオン等を再インストールすること無しにゲームをアップデートしていくことが可能となる。
 上述したように、上記各実施の形態によれば、任意のWebページ上でのゲームを効率的に実現可能とすることができる。
 すなわち、本実施の形態によれば、Webブラウザ11のアドオンとゲームサーバ20とを連動させることで、以下の3つの要件を満たしたゲームを実現可能とすることができる。
1.日常的に利用しているWebブラウザ11上でゲームをプレイできる。
2.任意のWebページ上でゲームをプレイできる。
3.Webページ群のURLやコンテンツと連動してゲームの内容が変化する。
 Webブラウザ11のアドオンと連動したゲームサーバ20がゲームを管理することで、ゲームの動作変更に際し、クライアント側の更新頻度の低下(すなわち、効率化)を期待することができる。また、ゲームサーバ20側でデータの管理を行うことで、ヒューマンコンピュテーションやユーザのナビゲーションを容易に実現することが可能となる。
 また、ゲームサーバ20との連携により、Webページ上でのマルチプレイヤーオンラインゲームも実現可能とすることができる。マルチプレイヤーオンラインゲームが実現できることで、よりユーザを魅了し長期間プレイしてもらえることが期待できる。
 なお、上記各実施の形態において、ゲームサーバ20は、情報処理装置の一例である。ブラウザ情報は、第1の情報の一例である。画面情報は、第2の情報及び第4の情報の一例である。操作情報は、第3の情報の一例である。ハッシュ値Xは、第1のハッシュ値の一例である。ハッシュ値Yは、第2のハッシュ値の一例である。ユーザ端末10は、ゲーム実現装置の一例である。ブラウザ情報送信部15は、送信部の一例である。画面情報受信部16は、受信部の一例である。ゲーム画面描画部17は、表示制御部の一例である。ゲーム操作管理部18は、制御部の一例である。
 以上、本発明の実施の形態について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
10     ユーザ端末
11     Webブラウザ
12     ユーザ情報入力部
13     ログイン要求部
14     ブラウザ状態管理部
15     ブラウザ情報送信部
16     画面情報受信部
17     ゲーム画面描画部
18     ゲーム操作管理部
20     ゲームサーバ
21     ログイン応答部
22     ユーザ管理部
23     ブラウザ情報受信部
24     ゲーム動作管理部
25     DB管理部
26     画面情報送信部
30     ゲームDB
100    ドライブ装置
101    記録媒体
102    補助記憶装置
103    メモリ装置
104    CPU
105    インタフェース装置
106    表示装置
107    入力装置
B      バス

Claims (6)

  1.  Webブラウザに表示されているWebページに関する情報を含む第1の情報をネットワークを介して接続される情報処理装置へ送信する第1の送信手順と、
     前記第1の情報に基づいて前記情報処理装置によって生成される、前記Webページを用いたゲームの画面に関する第2の情報を受信する第1の受信手順と、
     前記第2の情報に基づいて前記画面を表示する表示手順と、
     前記画面の表示後における前記Webページに対するユーザによる操作に応じた処理を制御する制御手順と、
    をコンピュータが実行することを特徴とするゲーム実現方法。
  2.  前記操作に関する第3の情報を前記情報処理装置へ送信する第2の送信手順と、
     前記第3の情報に基づいて前記情報処理装置によって生成される、前記画面の更新に関する第4の情報を受信する第2の受信手順と、
     前記第4の情報に基づいて前記画面を更新する更新手順と、
    を前記コンピュータが実行することを特徴とする請求項1記載のゲーム実現方法。
  3.  前記第1の情報は、前記Webページに表示されている文字列を含み、
     前記第2の情報は、前記文字列の一部を構成する1以上の第1の文字列と、前記第1の文字列のそれぞれを他の言語に翻訳した第2の文字列とを含み、
     前記画面は、前記第2の文字列の一覧を含み、
     前記制御手順は、前記一覧に含まれるいずれかの前記第2の文字列に対応する前記第1の文字列が操作された場合に、前記処理を制御する、
    ことを特徴とする請求項1又は2記載のゲーム実現方法。
  4.  前記第1の情報の前に、前記Webページのソースコードの第1のハッシュ値及び前記WebページのURLを前記情報処理装置へ送信する第3の送信手順を前記コンピュータが実行し、
     前記第1の送信手順は、前記情報処理装置が前記URLに基づいてWebページを取得することができ、かつ、当該Webページのソースコードについて前記情報処理装置が生成する第2のハッシュ値が、前記第1のハッシュ値と一致する場合、又は前記第1のハッシュ値と前記第2のハッシュ値との類似度が閾値以上である場合に、前記情報処理装置から送信される応答に応じ、前記第1の情報を前記情報処理装置へ送信する、
    ことを特徴とする請求項1乃至3いずれか一項記載のゲーム実現方法。
  5.  Webブラウザに表示されているWebページに関する情報を含む第1の情報をネットワークを介して接続される情報処理装置へ送信する送信部と、
     前記第1の情報に基づいて前記情報処理装置によって生成される、前記Webページを用いたゲームの画面に関する第2の情報を受信する受信部と、
     前記第2の情報に基づいて前記画面を表示する表示制御部と、
     前記画面の表示後における前記Webページに対するユーザによる操作に応じた処理を制御する制御部と、
    を有することを特徴とするゲーム実現装置。
  6. 請求項1乃至4いずれか一項記載のゲーム実現方法をコンピュータに実行させることを特徴とするプログラム。
PCT/JP2020/008743 2019-03-12 2020-03-02 ゲーム実現方法、ゲーム実現装置及びプログラム Ceased WO2020184258A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US17/438,336 US20220184500A1 (en) 2019-03-12 2020-03-02 Game realization method, game realization apparatus and program

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2019-044930 2019-03-12
JP2019044930A JP7326780B2 (ja) 2019-03-12 2019-03-12 ゲーム実現方法、ゲーム実現装置及びプログラム

Publications (1)

Publication Number Publication Date
WO2020184258A1 true WO2020184258A1 (ja) 2020-09-17

Family

ID=72427353

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/008743 Ceased WO2020184258A1 (ja) 2019-03-12 2020-03-02 ゲーム実現方法、ゲーム実現装置及びプログラム

Country Status (3)

Country Link
US (1) US20220184500A1 (ja)
JP (1) JP7326780B2 (ja)
WO (1) WO2020184258A1 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003340159A (ja) * 2002-05-24 2003-12-02 Sony Communication Network Corp 娯楽提供方法とその方法を利用する情報処理装置、および端末装置
JP2009075845A (ja) * 2007-09-20 2009-04-09 Sega Corp 表示制御プログラム及び表示制御装置
JP2013025381A (ja) * 2011-07-15 2013-02-04 Nippon Telegr & Teleph Corp <Ntt> Webブラウザ連動ゲーム生成装置、Webブラウザ連動ゲーム生成方法、及びそのプログラム

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6468160B2 (en) * 1999-04-08 2002-10-22 Nintendo Of America, Inc. Security system for video game system with hard disk drive and internet access capability
US7452278B2 (en) * 2003-05-09 2008-11-18 Microsoft Corporation Web access to secure data
US20090298582A1 (en) * 2008-05-30 2009-12-03 Matthew Robert Dempsky Method and system for distributing browser-based computer games and files
US8070163B2 (en) * 2009-12-03 2011-12-06 John Ogilvie Multilingual-tile word games
US20130196777A1 (en) * 2010-07-01 2013-08-01 Internet Gaming Services International Online Gaming with Real-World Data
US9669291B1 (en) * 2011-05-31 2017-06-06 Zynga Inc. System and method to facilitate moves in a word game
KR101471589B1 (ko) * 2013-08-22 2014-12-10 (주)잉카엔트웍스 공통중간언어 기반 프로그램을 위한 보안 제공 방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003340159A (ja) * 2002-05-24 2003-12-02 Sony Communication Network Corp 娯楽提供方法とその方法を利用する情報処理装置、および端末装置
JP2009075845A (ja) * 2007-09-20 2009-04-09 Sega Corp 表示制御プログラム及び表示制御装置
JP2013025381A (ja) * 2011-07-15 2013-02-04 Nippon Telegr & Teleph Corp <Ntt> Webブラウザ連動ゲーム生成装置、Webブラウザ連動ゲーム生成方法、及びそのプログラム

Also Published As

Publication number Publication date
JP7326780B2 (ja) 2023-08-16
US20220184500A1 (en) 2022-06-16
JP2020146160A (ja) 2020-09-17

Similar Documents

Publication Publication Date Title
US20220410013A1 (en) Server device, control method performed by the server device, program, and terminal device
US9908051B2 (en) Techniques for creating dynamic game activities for games
JP7686933B2 (ja) 情報推奨方法、装置、電子機器及びプログラム
US9283485B2 (en) Game control device, game control method, program, and game system
US8244804B1 (en) Validation of device activity via logic sharing
US20090298594A1 (en) Media/tag-based word games
WO2020000835A1 (zh) 一种自动显示文档目录的方法及装置
CN112672795A (zh) 游戏内资源呈现平台
JP5832982B2 (ja) ゲーム制御装置、プログラム、ゲームシステム
WO2024234614A1 (zh) 信息处理方法、装置、设备、计算机可读存储介质及计算机程序产品
US20190299103A1 (en) System and method for updating an application client
CN117046094A (zh) 内容的生成方法、装置、设备及存储介质
WO2023013679A1 (ja) メッセージ送信に応じて所定の処理を実行するためのシステム
CN117618920A (zh) 基于状态图的剧情生成方法、装置、设备及介质
US20140122404A1 (en) System and method for displaying a trail
KR20050074878A (ko) 온라인 게임 방법 및 온라인 게임 시스템
JP7326780B2 (ja) ゲーム実現方法、ゲーム実現装置及びプログラム
KR20050096366A (ko) 온라인 게임 제공 방법 및 시스템
CN116785700A (zh) 一种游戏数据处理方法、装置、设备及存储介质
KR100382314B1 (ko) 사이버 캐릭터가 적용된 정보 서비스 시스템 및 서비스 방법
WO2024078235A1 (zh) 游戏处理方法、装置、计算机设备、计算机可读存储介质及计算机程序产品
JP7349833B2 (ja) ゲームを提供するためのシステム、方法、及びプログラム
KR20200107784A (ko) 게임 내에서 가이드 컨텐츠를 제공하기 위한 게임 서비스 제공 방법 및 그 장치
CN114653061B (zh) 数据处理方法、装置、电子设备及存储介质
KR102666382B1 (ko) 게임 컨텐츠 기반 계정 인증 방법 및 시스템

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20768978

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20768978

Country of ref document: EP

Kind code of ref document: A1