JP6412667B1 - Server, method, and program for providing game - Google Patents

Server, method, and program for providing game Download PDF

Info

Publication number
JP6412667B1
JP6412667B1 JP2018043454A JP2018043454A JP6412667B1 JP 6412667 B1 JP6412667 B1 JP 6412667B1 JP 2018043454 A JP2018043454 A JP 2018043454A JP 2018043454 A JP2018043454 A JP 2018043454A JP 6412667 B1 JP6412667 B1 JP 6412667B1
Authority
JP
Japan
Prior art keywords
player
player terminal
predetermined
specific
predetermined process
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.)
Active
Application number
JP2018043454A
Other languages
Japanese (ja)
Other versions
JP2019154667A (en
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.)
DeNA Co Ltd
Original Assignee
DeNA Co Ltd
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 DeNA Co Ltd filed Critical DeNA Co Ltd
Priority to JP2018043454A priority Critical patent/JP6412667B1/en
Application granted granted Critical
Publication of JP6412667B1 publication Critical patent/JP6412667B1/en
Publication of JP2019154667A publication Critical patent/JP2019154667A/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

【課題】 ゲームを提供するサーバ側の処理負荷を適切に低減させる。【解決手段】 本発明の一実施形態に係るゲーム提供サーバ10は、ゲームを進行させるための所定の処理をプレイヤ端末30側で実行する特定のプレイヤ端末30において入力される入力情報に基づく当該所定の処理の模擬的な実行を1又は複数の他のプレイヤ端末30に依頼し、当該特定のプレイヤ端末30及び1又は複数の他のプレイヤ端末30における所定の処理の実行結果の少なくとも一部が異なる場合に不正な処理が実行されたと判定するから、ゲームを進行させるための処理をプレイヤ端末30側で実行する場合のチート行為等の判定を可能とする。【選択図】 図1PROBLEM TO BE SOLVED: To appropriately reduce processing load on a server side providing a game. A game providing server 10 according to an embodiment of the present invention performs a predetermined process based on input information input at a specific player terminal 30 that executes a predetermined process for advancing a game on the player terminal 30 side. The one or a plurality of other player terminals 30 are requested to perform a simulated execution of the process, and at least a part of the execution results of the predetermined processes in the specific player terminal 30 and the one or a plurality of other player terminals 30 are different. In this case, since it is determined that an illegal process is executed, it is possible to determine a cheat action or the like when a process for advancing the game is executed on the player terminal 30 side. [Selection] Figure 1

Description

本発明は、ゲームを提供するためのサーバ、方法、及びプログラムに関するものである。   The present invention relates to a server, a method, and a program for providing a game.

従来、ゲームを進行させるための演算処理や画面の描画処理がサーバ側で実行されるクラウド型のゲームシステムが提供されている。こうしたクラウド型のゲームシステムは、処理性能が低いプレイヤ端末に対して表現豊かなゲームコンテンツを提供し得るものの、同時に接続するプレイヤ数が増加するに従って、サーバ側の処理負荷が問題となる場合がある。そこで、例えば、下記特許文献1は、複数のサーバを備えるクラウド型のゲームシステムにおいて、描画処理を担当するサーバを処理負荷等に応じて変更することにより、複数のサーバ間での好適な負荷の分散を実現する技術を開示している。   2. Description of the Related Art Conventionally, a cloud game system is provided in which arithmetic processing for advancing a game and screen drawing processing are executed on the server side. Such a cloud-type game system can provide expressive game content to a player terminal with low processing performance, but the processing load on the server side may become a problem as the number of players connected simultaneously increases. . Therefore, for example, in Patent Document 1 described below, in a cloud-type game system including a plurality of servers, a suitable load among a plurality of servers is changed by changing a server in charge of drawing processing according to a processing load or the like. A technique for realizing dispersion is disclosed.

特表2015−523886号公報Special table 2015-523886

しかしながら、上述した従来の技術においては、ゲームシステムにおけるサーバ側の負荷を分散させるためには複数のサーバを備える必要があり、このことは、コスト高の要因となり得る。そこで、ゲームを進行させるための処理の少なくとも一部をプレイヤ端末側で実行させることも考えられるが、この場合、改変されたプログラムをプレイヤ端末側で実行すること等によって不正な利益を得るチート行為が問題となり易い。   However, in the conventional technique described above, it is necessary to provide a plurality of servers in order to distribute the load on the server side in the game system, which may be a factor of high cost. Therefore, it is conceivable that at least a part of the process for advancing the game is executed on the player terminal side. In this case, a cheat action for obtaining an illegal profit by executing a modified program on the player terminal side, etc. Is likely to be a problem.

本発明の実施形態は、ゲームを提供するサーバ側の処理負荷を適切に低減させることを目的の一つとする。本発明の実施形態の他の目的は、本明細書全体を参照することにより明らかとなる。   An object of the embodiment of the present invention is to appropriately reduce the processing load on the server side that provides the game. Other objects of the embodiments of the present invention will become apparent by referring to the entire specification.

本発明の一実施形態に係るサーバは、1又は複数のコンピュータプロセッサを備え、ゲームを提供するためのサーバであって、前記1又は複数のコンピュータプロセッサは、読取可能な命令の実行に応じて、前記ゲームを進行させるための所定の処理であってプレイヤ端末において入力される入力情報に少なくとも基づいて実行される前記所定の処理の実行モードとして、前記所定の処理をプレイヤ端末側で実行する第1のモードが設定されている特定のプレイヤ端末から、前記特定のプレイヤ端末において入力される特定の入力情報を取得するステップと、前記特定の入力情報に少なくとも基づく前記所定の処理の模擬的な実行を1又は複数の他のプレイヤ端末に依頼するステップと、前記特定のプレイヤ端末及び前記1又は複数の他のプレイヤ端末において前記特定の入力情報に少なくとも基づいてそれぞれ実行される前記所定の処理の実行結果の少なくとも一部が異なる場合に、前記特定のプレイヤ端末及び前記1又は複数の他のプレイヤ端末の少なくとも一部において不正な処理が実行されたと判定するステップと、を実行する。   A server according to an embodiment of the present invention includes one or more computer processors, and is a server for providing a game, and the one or more computer processors are configured to execute a readable instruction, A first process for executing the predetermined process on the player terminal side as an execution mode of the predetermined process, which is a predetermined process for advancing the game and is executed based on at least input information input at the player terminal. Obtaining specific input information input at the specific player terminal from a specific player terminal for which the mode is set, and simulating execution of the predetermined process based at least on the specific input information Requesting one or more other player terminals, the particular player terminal and the one or more other players. And at least one of the specific player terminal and the one or more other player terminals when at least a part of the execution result of the predetermined process executed at least based on the specific input information in the ear terminal is different. And a step of determining that an illegal process has been executed in the unit.

本発明の一実施形態に係る方法は、1又は複数のコンピュータによって実行され、ゲームを提供するための方法であって、前記ゲームを進行させるための所定の処理であってプレイヤ端末において入力される入力情報に少なくとも基づいて実行される前記所定の処理の実行モードとして、前記所定の処理をプレイヤ端末側で実行する第1のモードが設定されている特定のプレイヤ端末から、前記特定のプレイヤ端末において入力される特定の入力情報を取得するステップと、前記特定の入力情報に少なくとも基づく前記所定の処理の模擬的な実行を1又は複数の他のプレイヤ端末に依頼するステップと、前記特定のプレイヤ端末及び前記1又は複数の他のプレイヤ端末において前記特定の入力情報に少なくとも基づいてそれぞれ実行される前記所定の処理の実行結果の少なくとも一部が異なる場合に、前記特定のプレイヤ端末及び前記1又は複数の他のプレイヤ端末の少なくとも一部において不正な処理が実行されたと判定するステップと、を備える。   A method according to an embodiment of the present invention is a method for providing a game that is executed by one or a plurality of computers, and is a predetermined process for advancing the game, which is input at a player terminal. From the specific player terminal in which the first mode for executing the predetermined process on the player terminal side is set as the execution mode of the predetermined process executed based at least on the input information, the specific player terminal Obtaining specific input information to be input; requesting one or more other player terminals to perform a simulated execution of the predetermined process based at least on the specific input information; and the specific player terminal And before being executed based on at least the specific input information in the one or more other player terminals. When at least part of the execution result of the predetermined processing is different, and a determining that an illegal process has been executed at least some of the specific player terminal and the one or more other player terminals.

本発明の一実施形態に係るプログラムは、ゲームを提供するためのプログラムであって、1又は複数のコンピュータ上で実行されることに応じて、前記1又は複数のコンピュータに、前記ゲームを進行させるための所定の処理であってプレイヤ端末において入力される入力情報に少なくとも基づいて実行される前記所定の処理の実行モードとして、前記所定の処理をプレイヤ端末側で実行する第1のモードが設定されている特定のプレイヤ端末から、前記特定のプレイヤ端末において入力される特定の入力情報を取得するステップと、前記特定の入力情報に少なくとも基づく前記所定の処理の模擬的な実行を1又は複数の他のプレイヤ端末に依頼するステップと、前記特定のプレイヤ端末及び前記1又は複数の他のプレイヤ端末において前記特定の入力情報に少なくとも基づいてそれぞれ実行される前記所定の処理の実行結果の少なくとも一部が異なる場合に、前記特定のプレイヤ端末及び前記1又は複数の他のプレイヤ端末の少なくとも一部において不正な処理が実行されたと判定するステップと、を実行させる。   A program according to an embodiment of the present invention is a program for providing a game, and causes the one or more computers to advance the game in response to being executed on the one or more computers. A first mode for executing the predetermined process on the player terminal side is set as an execution mode of the predetermined process that is executed based on at least input information input at the player terminal. One or a plurality of steps of acquiring specific input information input at the specific player terminal from the specific player terminal, and performing a simulated execution of the predetermined process based on at least the specific input information. Requesting the player terminal, and the specific player terminal and the one or more other player terminals When at least a part of the execution result of the predetermined process executed based on at least predetermined input information is different, the specific player terminal and at least a part of the one or more other player terminals are illegal. Determining that the process has been executed.

本発明の様々な実施形態は、ゲームを提供するサーバ側の処理負荷を適切に低減させる。   Various embodiments of the present invention appropriately reduce the processing load on the server side that provides the game.

本発明の一実施形態に係るゲーム提供サーバ10を含むネットワークの構成を概略的に示す構成図。The block diagram which shows schematically the structure of the network containing the game provision server 10 which concerns on one Embodiment of this invention. ゲーム提供サーバ10が有する機能を概略的に示すブロック図。The block diagram which shows roughly the function which the game provision server 10 has. プレイヤ情報テーブル411が管理する情報を例示する図。The figure which illustrates the information which the player information table 411 manages. プレイヤ端末30からのログイン要求に応じてサーバ10が実行する処理を例示するフロー図。The flowchart which illustrates the process which the server 10 performs according to the login request | requirement from the player terminal 30. FIG. 接続中プレイヤ管理テーブルにおいて管理される情報の具体例を示す図。The figure which shows the specific example of the information managed in a connected player management table. 複数のプレイヤ端末30の全ての処理モードがサーバモードである場合の、ゲーム提供サーバ10とプレイヤ端末30との間の通信を例示する図。The figure which illustrates communication between the game provision server 10 and the player terminal 30 when all the processing modes of the several player terminal 30 are server modes. 複数のプレイヤ端末30の一部の処理モードが端末モードとなっている場合の、ゲーム提供サーバ10とプレイヤ端末30との間の通信を例示する図。The figure which illustrates communication between the game provision server 10 and the player terminal 30 in case the one part processing mode of the some player terminal 30 is a terminal mode. 処理モードが端末モードであるプレイヤ端末30からのゲームの進行要求に応じてサーバ10が実行する処理を例示するフロー図。The flowchart which illustrates the process which the server 10 performs according to the progress request of the game from the player terminal 30 whose process mode is a terminal mode. プレイヤ端末30Dにおいて実行される演算処理4511を模擬的に実行する2台の模擬処理用プレイヤ端末30としてプレイヤ端末30A、Bが選択された場合の通信を例示する図。The figure which illustrates communication when player terminal 30A, B is selected as two simulation process player terminals 30 which simulate and perform the arithmetic processing 4511 performed in player terminal 30D.

以下、図面を参照しながら、本発明の実施形態について説明する。   Hereinafter, embodiments of the present invention will be described with reference to the drawings.

図1は、本発明の一実施形態に係るゲーム提供サーバ10を含むネットワークの構成を概略的に示す構成図である。サーバ10は、図1に示すように、インターネット等のネットワーク20を介してプレイヤ端末30と通信可能に接続されている。図1においては、1つのプレイヤ端末30のみが図示されているが、サーバ10は、複数のプレイヤ端末30と通信可能に接続されている。サーバ10は、プレイヤ端末30を介してゲームを提供する機能を有する。   FIG. 1 is a configuration diagram schematically showing the configuration of a network including a game providing server 10 according to an embodiment of the present invention. As shown in FIG. 1, the server 10 is connected to a player terminal 30 through a network 20 such as the Internet so as to be communicable. In FIG. 1, only one player terminal 30 is illustrated, but the server 10 is connected to a plurality of player terminals 30 so as to be communicable. The server 10 has a function of providing a game via the player terminal 30.

サーバ10は、一般的なコンピュータとして構成されており、図1に示すように、CPU(コンピュータプロセッサ)11と、メインメモリ12と、ユーザI/F13と、通信I/F14と、ストレージ(記憶装置)15とを備え、これらの各構成要素が図示しないバス等を介して電気的に接続されている。   The server 10 is configured as a general computer. As shown in FIG. 1, the server 10 includes a CPU (computer processor) 11, a main memory 12, a user I / F 13, a communication I / F 14, and a storage (storage device). These components are electrically connected via a bus (not shown) or the like.

CPU11は、ストレージ15等に記憶されている様々なプログラムをメインメモリ12に読み込んで、当該プログラムに含まれる各種の命令を実行する。メインメモリ12は、例えば、DRAM等によって構成される。   The CPU 11 reads various programs stored in the storage 15 or the like into the main memory 12 and executes various instructions included in the programs. The main memory 12 is configured by, for example, a DRAM.

ユーザI/F13は、ユーザとの間で情報をやり取りするための各種の入出力装置を含む。ユーザI/F13は、例えば、キーボード、ポインティングデバイス(例えば、マウス、タッチパネル等)等の情報入力装置、マイクロフォン等の音声入力装置、カメラ等の画像入力装置を含む。また、ユーザI/F13は、ディスプレイ等の画像出力装置、スピーカ等の音声出力装置を含む。   The user I / F 13 includes various input / output devices for exchanging information with the user. The user I / F 13 includes, for example, an information input device such as a keyboard and a pointing device (for example, a mouse and a touch panel), a voice input device such as a microphone, and an image input device such as a camera. The user I / F 13 includes an image output device such as a display and an audio output device such as a speaker.

通信I/F14は、ネットワークアダプタ等のハードウェア、各種の通信用ソフトウェア、又はこれらの組み合わせとして実装され、ネットワーク20等を介した有線又は無線の通信を実現できるように構成されている。   The communication I / F 14 is implemented as hardware such as a network adapter, various types of communication software, or a combination thereof, and is configured to realize wired or wireless communication via the network 20 or the like.

ストレージ15は、例えば磁気ディスク、フラッシュメモリ等によって構成される。ストレージ15は、オペレーティングシステムを含む様々なプログラム、及び各種データ等を記憶する。   The storage 15 is configured by, for example, a magnetic disk, a flash memory, or the like. The storage 15 stores various programs including an operating system, various data, and the like.

本実施形態において、サーバ10は、それぞれが上述したハードウェア構成を有する複数のコンピュータを用いて構成され得る。   In the present embodiment, the server 10 may be configured using a plurality of computers each having the hardware configuration described above.

このように構成されたゲーム提供サーバ10は、ウェブサーバ及びアプリケーションサーバとしての機能を有することができ、プレイヤ端末30にインストールされているウェブブラウザ又はサーバ10が提供するゲーム(以下、「提供ゲーム」と言うことがある。)用のアプリケーションからの要求に応答して各種の処理を実行し、当該処理の結果に応じた画面データ(例えば、HTMLデータ)及び制御データ等をプレイヤ端末30に送信することができる。プレイヤ端末30は、受信したデータに基づくウェブページ又はその他の画面を表示することができる。   The game providing server 10 configured as described above can have functions as a web server and an application server, and a game provided by the web browser or the server 10 installed in the player terminal 30 (hereinafter, “provided game”). In response to a request from the application, various processing is executed, and screen data (for example, HTML data) and control data according to the result of the processing are transmitted to the player terminal 30. be able to. The player terminal 30 can display a web page or other screen based on the received data.

プレイヤ端末30は、一般的なコンピュータとして構成されており、図1に示すように、CPU(コンピュータプロセッサ)31と、メインメモリ32と、ユーザI/F33と、通信I/F34と、ストレージ(記憶装置)35とを備え、これらの各構成要素が図示しないバス等を介して電気的に接続されている。   The player terminal 30 is configured as a general computer, and as shown in FIG. 1, a CPU (computer processor) 31, a main memory 32, a user I / F 33, a communication I / F 34, and storage (memory). Device) 35, and these components are electrically connected via a bus or the like (not shown).

CPU31は、ストレージ35等に記憶されている様々なプログラムをメインメモリ32に読み込んで、当該プログラムに含まれる各種の命令を実行する。メインメモリ32は、例えば、DRAM等によって構成される。   The CPU 31 reads various programs stored in the storage 35 and the like into the main memory 32 and executes various instructions included in the programs. The main memory 32 is configured by, for example, a DRAM.

ユーザI/F33は、ユーザとの間で情報をやり取りするための各種の入出力装置である。ユーザI/F33は、例えば、キーボード、ポインティングデバイス(例えば、マウス、タッチパネル等)等の情報入力装置、マイクロフォン等の音声入力装置、カメラ等の画像入力装置を含む。また、ユーザI/F33は、ディスプレイ等の画像出力装置、スピーカ等の音声出力装置を含む。   The user I / F 33 is various input / output devices for exchanging information with the user. The user I / F 33 includes, for example, an information input device such as a keyboard and a pointing device (for example, a mouse and a touch panel), a voice input device such as a microphone, and an image input device such as a camera. The user I / F 33 includes an image output device such as a display and an audio output device such as a speaker.

通信I/F34は、ネットワークアダプタ等のハードウェア、各種の通信用ソフトウェア、及びこれらの組み合わせとして実装され、ネットワーク20等を介した有線又は無線の通信を実現できるように構成されている。   The communication I / F 34 is implemented as hardware such as a network adapter, various types of communication software, and combinations thereof, and is configured to realize wired or wireless communication via the network 20 or the like.

ストレージ35は、例えば磁気ディスク又はフラッシュメモリ等によって構成される。ストレージ35は、オペレーティングシステムを含む様々なプログラム及び各種データ等を記憶する。ストレージ35が記憶するプログラムは、アプリケーションマーケット等からダウンロードされてインストールされ得る。   The storage 35 is configured by, for example, a magnetic disk or a flash memory. The storage 35 stores various programs including the operating system, various data, and the like. The program stored in the storage 35 can be downloaded from an application market or the like and installed.

本実施形態において、プレイヤ端末30は、スマートフォン、タブレット端末、パーソナルコンピュータ、ウェアラブルデバイス、又はゲーム専用端末等として構成され得る。   In the present embodiment, the player terminal 30 may be configured as a smartphone, a tablet terminal, a personal computer, a wearable device, a game dedicated terminal, or the like.

このように構成されたプレイヤ端末30のユーザ(プレイヤ)は、ストレージ35等にインストールされているウェブブラウザ又は提供ゲーム用のアプリケーションを介したサーバ10との通信を実行することによって、当該提供ゲームをプレイすることができる。プレイヤ端末30において実行される提供ゲーム用アプリケーションは、本発明のプログラムの一部又は全部を実装したプログラムの一例となり得る。   The user (player) of the player terminal 30 configured as described above performs communication with the server 10 via the web browser installed in the storage 35 or the like or the application for the provided game, thereby playing the provided game. You can play. The provided game application executed on the player terminal 30 can be an example of a program in which part or all of the program of the present invention is installed.

次に、本実施形態のゲーム提供サーバ10が有する機能について説明する。図2は、サーバ10が有する機能を概略的に示すブロック図である。サーバ10は、図示するように、様々な情報を記憶及び管理する情報記憶管理部41と、提供ゲームの基本機能を制御する基本機能制御部43と、提供ゲームにおけるゲームの進行を制御するゲーム進行制御部45と、プレイヤ端末30における不正な処理の実行を判定する不正判定部47とを有する。これらの機能は、CPU11及びメインメモリ12等のハードウェア、並びに、ストレージ15等に記憶されている各種プログラムやデータ等が協働して動作することによって実現され、例えば、メインメモリ12に読み込まれたプログラムに含まれる命令をCPU11が実行することによって実現される。また、図2に示す機能の一部又は全部は、サーバ10とプレイヤ端末30とが協働することによって実現され、又は、プレイヤ端末30によって実現され得る。   Next, functions of the game providing server 10 of this embodiment will be described. FIG. 2 is a block diagram schematically showing the functions of the server 10. As illustrated, the server 10 includes an information storage management unit 41 that stores and manages various information, a basic function control unit 43 that controls basic functions of the provided game, and a game progress that controls the progress of the game in the provided game. It has the control part 45 and the fraud determination part 47 which determines execution of the fraudulent process in the player terminal 30. These functions are realized by the cooperation of hardware such as the CPU 11 and the main memory 12 and various programs and data stored in the storage 15 and the like. For example, the functions are read into the main memory 12. This is realized by the CPU 11 executing instructions included in the program. 2 may be realized by the cooperation of the server 10 and the player terminal 30 or may be realized by the player terminal 30.

サーバ10の情報記憶管理部41は、ストレージ15等において様々な情報を記憶及び管理する。情報記憶管理部41は、例えば、図2に示すように、プレイヤに関する情報を管理するプレイヤ情報テーブル411を有する。   The information storage management unit 41 of the server 10 stores and manages various information in the storage 15 and the like. For example, as shown in FIG. 2, the information storage management unit 41 includes a player information table 411 that manages information about players.

サーバ10の基本機能制御部43は、提供ゲームの基本機能の制御に関する様々な処理を実行する。例えば、基本機能制御部43は、基本機能に関する様々な画面のHTMLデータ又は制御データをプレイヤ端末30に送信し、プレイヤ端末30で表示される当該画面を介したユーザによる操作入力に応答して様々な処理を実行し、当該処理の結果に応じたHTMLデータ又は制御データをプレイヤ端末30に送信する。提供ゲームの基本機能は、例えば、プレイヤの管理(例えば、プレイヤ情報テーブル411の更新等)等を含む。   The basic function control unit 43 of the server 10 executes various processes related to the control of the basic function of the provided game. For example, the basic function control unit 43 transmits HTML data or control data of various screens related to the basic function to the player terminal 30, and in response to an operation input by the user via the screen displayed on the player terminal 30. This processing is executed, and HTML data or control data corresponding to the result of the processing is transmitted to the player terminal 30. The basic functions of the provided game include, for example, player management (for example, updating of the player information table 411) and the like.

サーバ10のゲーム進行制御部45は、ゲームの進行の制御に関する様々な処理を実行する。本実施形態において、ゲーム進行制御部45は、ゲームを進行させるための所定の処理の実行モードとして、当該所定の処理をプレイヤ端末30側で実行する第1のモードが設定されている特定のプレイヤ端末30から、当該特定のプレイヤ端末30において入力される入力情報を取得するように構成されている。入力情報は、プレイヤによる操作入力に応じた情報が含まれる。   The game progress control unit 45 of the server 10 executes various processes related to the control of the game progress. In the present embodiment, the game progress control unit 45 is a specific player in which a first mode in which the predetermined process is executed on the player terminal 30 side is set as an execution mode of the predetermined process for progressing the game. Input information input at the specific player terminal 30 is obtained from the terminal 30. The input information includes information corresponding to the operation input by the player.

サーバ10の不正判定部47は、プレイヤ端末30における不正な処理の実行の判定に関する様々な処理を実行する。本実施形態において、不正判定部47は、上記第1のモードの特定のプレイヤ端末において入力される入力情報に少なくとも基づく上記所定の処理の模擬的な実行を1又は複数の他のプレイヤ端末30に依頼し、上記特定のプレイヤ端末30及び1又は複数の他のプレイヤ端末30においてそれぞれ実行される上記所定の処理の実行結果の少なくとも一部が異なる場合に、当該特定のプレイヤ端末30及び1又は複数の他のプレイヤ端末30の少なくとも一部において不正な処理が実行されたと判定するように構成されている。   The fraud determination unit 47 of the server 10 executes various processes related to determination of execution of fraudulent processes in the player terminal 30. In the present embodiment, the fraud determination unit 47 performs the simulated execution of the predetermined process based on at least input information input at the specific player terminal in the first mode on one or more other player terminals 30. The at least one specific player terminal 30 and one or a plurality of other player terminals 30 are requested, and at least a part of the execution results of the predetermined process differ. It is configured to determine that an unauthorized process has been executed in at least a part of the other player terminals 30.

このように、本実施形態のゲーム提供サーバ10は、ゲームを進行させるための所定の処理をプレイヤ端末30側で実行する特定のプレイヤ端末30において入力される入力情報に基づく当該所定の処理の模擬的な実行を1又は複数の他のプレイヤ端末30に依頼し、当該特定のプレイヤ端末30及び1又は複数の他のプレイヤ端末30における所定の処理の実行結果の少なくとも一部が異なる場合に不正な処理が実行されたと判定するから、ゲームを進行させるための処理をプレイヤ端末30側で実行する場合のチート行為等の判定を可能とする。つまり、本発明の実施形態は、ゲームを提供するサーバ側の処理負荷を適切に低減させる。   As described above, the game providing server 10 according to the present embodiment simulates the predetermined process based on the input information input at the specific player terminal 30 that executes the predetermined process for advancing the game on the player terminal 30 side. When one or a plurality of other player terminals 30 are requested to execute a specific execution, and at least a part of the execution results of the predetermined processing in the specific player terminal 30 and the one or more other player terminals 30 is different. Since it is determined that the process has been executed, it is possible to determine a cheat action or the like when the process for advancing the game is executed on the player terminal 30 side. That is, the embodiment of the present invention appropriately reduces the processing load on the server side that provides the game.

本実施形態において、上記所定の処理は、対応するプレイヤの状態情報の更新を伴って実行されるように構成され得る。状態情報は、ゲームの進行に応じて変化する様々な情報等を含み、例えば、ゲームにおけるプレイヤキャラクタ及び保有アイテム等に関する各種パラメータ、並びに、ステージ又はエリア等のクリア状況等を含む。複数のプレイヤの各々の状態情報は、例えば、プレイヤ情報テーブル411において記憶及び管理される。この場合、ゲーム進行制御部45は、所定の処理をプレイヤ端末30側で実行する第1のモードの特定のプレイヤ端末30に対して、対応する特定のプレイヤの更新前の状態情報を提供し、当該特定のプレイヤ端末30における所定の処理の実行に伴って当該特定のプレイヤ端末30側で更新される当該特定のプレイヤの更新後の状態情報に少なくとも基づいて、プレイヤ情報テーブル411等に記憶されている特定のプレイヤの状態情報を更新する(特定のプレイヤ端末30側での更新を反映する)ように構成され得る。この場合、不正判定部47は、上記特定のプレイヤの更新前の状態情報の提供を伴って、上記所定の処理の模擬的な実行を1又は複数の他のプレイヤ端末に依頼し、当該所定の処理の実行結果としての当該特定のプレイヤの更新後の状態情報の少なくとも一部が異なる場合に不正な処理が実行されたと判定するように構成され得る。こうした構成は、所定の処理の実行に応じて更新されるプレイヤの更新後の状態情報の比較に基づいて、プレイヤ端末30における不正な処理の実行を判定することを可能とする。   In the present embodiment, the predetermined processing may be configured to be performed with the update of the corresponding player state information. The state information includes various information that changes according to the progress of the game, and includes, for example, various parameters related to the player character and possessed items in the game, and the clear status of the stage or area. The state information of each of the plurality of players is stored and managed in the player information table 411, for example. In this case, the game progress control unit 45 provides state information before updating the corresponding specific player to the specific player terminal 30 in the first mode in which the predetermined process is executed on the player terminal 30 side. It is stored in the player information table 411 or the like based at least on the updated state information of the specific player that is updated on the specific player terminal 30 side in accordance with execution of a predetermined process in the specific player terminal 30. It may be configured to update the state information of a specific player (reflecting the update on the specific player terminal 30 side). In this case, the fraud determination unit 47 requests simulation execution of the predetermined process to one or a plurality of other player terminals with provision of the state information before the update of the specific player. It may be configured to determine that an illegal process has been executed when at least a part of the updated state information of the specific player as a result of the process is different. Such a configuration makes it possible to determine the execution of an unauthorized process in the player terminal 30 based on a comparison of updated state information of the player updated in accordance with the execution of a predetermined process.

本実施形態において、ゲーム進行制御部45は、複数のプレイヤ端末30の各々の所定の処理の実行モードを設定するように構成することができ、所定の処理の実行モードは、上記第1のモードに加えて、当該所定の処理をサーバ10側で実行する第2のモードを含むように構成され得る。この場合、ゲーム進行制御部45は、プレイヤ端末30の同時接続数が所定の閾値未満である間は、複数のプレイヤ端末30の各々の所定の処理の実行モードとして当該所定の処理をサーバ10側で実行する第2のモードを設定する一方、プレイヤ端末30の同時接続数が所定の閾値以上となった場合に、複数のプレイヤ端末30の少なくとも一部(例えば、プレイヤ端末30の同時接続数が所定の閾値以上となった時点より後にログインしたプレイヤのプレイヤ端末30等)の所定の処理の実行モードとして当該所定の処理をプレイヤ端末30側で実行する第1のモードを設定するように構成され得る。こうした構成は、プレイヤ端末30の同時接続数に応じた所定の処理の実行モードの設定を可能とし、この結果、サーバ10側の処理負荷を適切に低減させる。   In the present embodiment, the game progress control unit 45 can be configured to set an execution mode of a predetermined process for each of the plurality of player terminals 30, and the execution mode of the predetermined process is the first mode. In addition, it may be configured to include a second mode in which the predetermined processing is executed on the server 10 side. In this case, while the number of simultaneous connections of the player terminals 30 is less than the predetermined threshold, the game progress control unit 45 performs the predetermined process as the execution mode of each predetermined process of the plurality of player terminals 30 on the server 10 side. When the second mode to be executed is set while the number of simultaneous connections of the player terminals 30 exceeds a predetermined threshold, at least a part of the plurality of player terminals 30 (for example, the number of simultaneous connections of the player terminals 30 is A first mode in which the predetermined process is executed on the player terminal 30 side is set as an execution mode of the predetermined process of the player terminal 30 or the like of the player who has logged in after the predetermined threshold value or more. obtain. Such a configuration makes it possible to set the execution mode of a predetermined process according to the number of simultaneous connections of the player terminal 30, and as a result, the processing load on the server 10 side is appropriately reduced.

本実施形態において、不正判定部47が所定の処理の模擬的な実行を依頼する1又は複数の他のプレイヤ端末の数を2以上とすることができ、この場合、不正判定部47は、所定の処理の実行結果の少なくとも一部が異なる場合に、上記特定のプレイヤ端末30及び1又は複数の他のプレイヤ端末30のうち、当該所定の処理の実行結果が同一であるプレイヤ端末30の数が最も少ないプレイヤ端末30において不正な処理が実行されたと判定するように構成され得る。こうした構成は、所定の処理の実行結果が同一であるプレイヤ端末30の数に基づいて、不正な処理が実行されたと判定されるプレイヤ端末30を特定することを可能とする。   In the present embodiment, the number of one or more other player terminals for which the fraud determination unit 47 requests a simulated execution of a predetermined process can be two or more. In this case, the fraud determination unit 47 When at least a part of the execution result of the process is different, the number of player terminals 30 having the same execution result of the predetermined process is the same among the specific player terminal 30 and one or a plurality of other player terminals 30. It may be configured to determine that unauthorized processing has been executed in the fewest player terminals 30. Such a configuration makes it possible to identify the player terminal 30 that is determined to have executed an unauthorized process based on the number of player terminals 30 that have the same execution result of the predetermined process.

また、不正判定部47は、複数のプレイヤ端末30の中から、所定のルールに従って、所定の処理の模擬的な実行を依頼する1又は複数の他のプレイヤ端末30を選択するように構成され得る。こうした構成は、所定の処理の模擬的な実行を、所定のルールに基づく適切なプレイヤ端末30に対して依頼することを可能とする。当該所定のルールには、様々なルールが含まれ得る。   The fraud determination unit 47 may be configured to select one or a plurality of other player terminals 30 that request a simulated execution of a predetermined process from a plurality of player terminals 30 according to a predetermined rule. . Such a configuration makes it possible to request an appropriate player terminal 30 based on a predetermined rule for a simulated execution of a predetermined process. Various rules may be included in the predetermined rule.

例えば、所定のルールは、所定のブラックリストに含まれるプレイヤ端末30を除外するというルールを含み得る。所定のブラックリストは、例えば、過去にチート行為を行ったと疑われるプレイヤのリストとして構成され、この場合、不正判定部47は、当該ブラックリストに含まれるプレイヤのプレイヤ端末30を除外して、所定の処理の模擬的な実行を依頼する他のプレイヤ端末30を選択するように構成され得る。こうした構成は、不正な処理を実行するプレイヤ端末30に対して所定の処理の模擬的な実行を依頼してしまうことを抑制し、この結果、上記特定のプレイヤ端末30における不正な処理の実行を適切に判定することを可能とする。   For example, the predetermined rule may include a rule of excluding the player terminal 30 included in the predetermined black list. The predetermined black list is configured, for example, as a list of players suspected of having cheated in the past. In this case, the fraud determination unit 47 excludes the player terminal 30 of the player included in the black list, and determines the predetermined black list. It may be configured to select another player terminal 30 that requests a simulated execution of the process. Such a configuration suppresses requesting the player terminal 30 that executes unauthorized processing to perform a simulated execution of a predetermined process, and as a result, execution of the unauthorized process in the specific player terminal 30 is prevented. It is possible to judge appropriately.

また、所定のルールは、ゲストアカウントでログインされているプレイヤ端末30よりも通常アカウントでログインされているプレイヤ端末30を優先して選択するというルールを含み得る。例えば、不正判定部47は、ゲストアカウントでログインされているプレイヤ端末30を除外して、通常アカウントでログインされているプレイヤ端末30の中から所定の処理の模擬的な実行を依頼する他のプレイヤ端末30を選択するように構成される。こうした構成は、通常アカウントでログインされているプレイヤ端末30よりもゲストアカウントでログインされているプレイヤ端末30の方が不正な処理が実行される可能性が高いと考えることができるから、不正な処理を実行するプレイヤ端末30に対して所定の処理の模擬的な実行を依頼してしまうことを抑制し、この結果、上記特定のプレイヤ端末30における不正な処理の実行を適切に判定することを可能とする。   The predetermined rule may include a rule that the player terminal 30 logged in with the normal account is selected with priority over the player terminal 30 logged in with the guest account. For example, the fraud determination unit 47 excludes the player terminal 30 logged in with the guest account, and requests other players to simulate execution of a predetermined process from the player terminals 30 logged in with the normal account. The terminal 30 is configured to be selected. Since such a configuration can be considered that the player terminal 30 logged in with the guest account is more likely to execute unauthorized processing than the player terminal 30 logged in with the normal account, It is possible to prevent the player terminal 30 that executes the process from requesting a simulated execution of the predetermined process, and as a result, it is possible to appropriately determine the execution of the unauthorized process in the specific player terminal 30. And

また、所定のルールは、上記特定のプレイヤ端末30に対応する特定のプレイヤと所定の関係(例えば、フレンド、又は、フォロー/フォロワーの関係)を有する他のプレイヤのプレイヤ端末30を除外するというルールを含み得る。こうした構成は、特定のプレイヤがチート行為を行うプレイヤである場合、当該特定のプレイヤと所定の関係を有する他のプレイヤもまたチート行為を行うプレイヤである可能性が高いと考えることができるから、特定のプレイヤ端末30、及び、所定の処理の模擬的な実行を依頼する他のプレイヤ端末30の両方が不正な処理を実行するプレイヤ端末30であるという状況の発生が抑制され、この結果、不正な処理の実行の適切な判定が促進される。   Further, the predetermined rule is a rule that excludes the player terminal 30 of another player having a predetermined relationship (for example, a friend or follow / follower relationship) with a specific player corresponding to the specific player terminal 30. Can be included. In such a configuration, when a specific player is a player who performs a cheat action, it can be considered that another player having a predetermined relationship with the specific player is also likely to be a player who performs a cheat action. Occurrence of the situation that both the specific player terminal 30 and the other player terminal 30 that requests the simulated execution of the predetermined process are the player terminals 30 that execute the illegal process is suppressed. Appropriate determination of the execution of a correct process is promoted.

また、所定のルールは、所定の処理の実行モードとして、当該所定の処理をプレイヤ端末30側で実行する第1のモードが設定されているプレイヤ端末30よりも、当該所定の処理をサーバ10側で実行する第2のモードが設定されているプレイヤ端末30を優先して選択するというルールを含み得る。例えば、不正判定部47は、所定の処理の実行モードとして第1のモードが設定されているプレイヤ端末30を除外して、第2のモードが設定されているプレイヤ端末30の中から所定の処理の模擬的な実行を依頼する他のプレイヤ端末30を選択するように構成される。こうした構成は、処理負荷の小さいプレイヤ端末30に対して、所定の処理の模擬的な実行を依頼することを促進する。   Further, the predetermined rule is that the predetermined process is performed on the server 10 side rather than the player terminal 30 in which the first mode for executing the predetermined process on the player terminal 30 side is set as the execution mode of the predetermined process. May include a rule of preferentially selecting the player terminal 30 in which the second mode to be executed is set. For example, the fraud determination unit 47 excludes the player terminal 30 in which the first mode is set as the execution mode of the predetermined process, and performs predetermined processing from the player terminals 30 in which the second mode is set. Is configured to select another player terminal 30 that requests the simulated execution of the above. Such a configuration facilitates requesting the player terminal 30 with a small processing load to perform a simulated execution of a predetermined process.

また、所定のルールは、模擬的に実行中の所定の処理の数が少ないプレイヤ端末30を優先して選択するというルールを含み得る。例えば、不正判定部47は、何れかのプレイヤ端末30における入力情報に基づく模擬的な所定の処理を実行中であるプレイヤ端末30を除外して、特定のプレイヤ端末30における入力情報に基づく所定の処理の模擬的な実行を依頼する他のプレイヤ端末30を選択するように構成される。こうした構成は、処理負荷の小さいプレイヤ端末30に対して、所定の処理の模擬的な実行を依頼することを促進する。   Further, the predetermined rule may include a rule of preferentially selecting the player terminal 30 with a small number of predetermined processes being executed in a simulated manner. For example, the fraud determination unit 47 excludes the player terminal 30 that is executing the simulated predetermined process based on the input information in any player terminal 30 and performs the predetermined determination based on the input information in the specific player terminal 30. It is configured to select another player terminal 30 that requests a simulated execution of the process. Such a configuration facilitates requesting the player terminal 30 with a small processing load to perform a simulated execution of a predetermined process.

また、所定のルールは、処理性能が高いプレイヤ端末30を優先して選択するというルールを含み得る。こうした構成は、処理能力の高いプレイヤ端末30に対して、所定の処理の模擬的な実行を依頼することを促進する。   Further, the predetermined rule may include a rule of preferentially selecting the player terminal 30 having high processing performance. Such a configuration facilitates requesting the player terminal 30 having a high processing capability to perform a simulated execution of a predetermined process.

次に、このような機能を有する本実施形態のゲーム提供サーバ10の具体例について説明する。この具体例において、サーバ10は、オンラインRPGを提供するように構成されている。しかしながら、本実施形態における提供ゲームは、オンラインRPGに限定されず、様々な種類のゲームが含まれる。   Next, a specific example of the game providing server 10 of this embodiment having such a function will be described. In this specific example, the server 10 is configured to provide online RPG. However, the provided games in the present embodiment are not limited to online RPG, and include various types of games.

図3は、この具体例において、プレイヤ情報テーブル411が管理する情報を例示する。プレイヤ情報テーブル411は、プレイヤ毎の情報を管理し、図示するように、個別のプレイヤを識別する「プレイヤアカウント」に対応付けて、ゲームの状態に関する情報である「状態情報」、「フレンド情報」、「ブラックリスト対象フラグ」等の情報を管理する。状態情報は、プレイヤが保有するキャラクタ及びアイテムに関する情報、及び、ステージのクリア状況等のRPGの進行に応じた様々な情報を含む。フレンド情報は、プレイヤとの間でフレンドの関係を有する他のプレイヤを特定可能な情報(例えば、当該他のプレイヤのプレイヤアカウント等)を含む。ブラックリスト対象フラグは、不正な処理の実行(チート行為)に関するブラックリストの対象であるか否かを示す情報であり、例えば、過去にチート行為が疑われたプレイヤが、ブラックリストの対象として設定される。   FIG. 3 illustrates information managed by the player information table 411 in this specific example. The player information table 411 manages information for each player. As shown in the figure, the player information table 411 is associated with a “player account” for identifying individual players, and “state information” and “friend information”, which are information related to the state of the game. , Information such as “black list target flag” is managed. The state information includes information regarding characters and items held by the player, and various information according to the progress of the RPG, such as the stage clear status. The friend information includes information (for example, a player account of the other player) that can specify another player having a friend relationship with the player. The blacklist target flag is information indicating whether or not the blacklist is related to the execution of illegal processing (cheat act). For example, a player suspected of cheating in the past is set as the target of the blacklist. Is done.

図4は、この例において、プレイヤ端末30からのログイン要求に応じてサーバ10が実行する処理を例示するフロー図である。プレイヤ端末30からのログイン要求を受け付けると、サーバ10は、まず、図示するように、ログイン処理を実行する(ステップS100)。ログイン処理は、ユーザ認証、及び、その後の初期処理等の様々な処理を含む。   FIG. 4 is a flowchart illustrating processing executed by the server 10 in response to a login request from the player terminal 30 in this example. Upon receiving a login request from the player terminal 30, the server 10 first executes a login process as shown (step S100). The login process includes various processes such as user authentication and subsequent initial processes.

次に、サーバ10は、その時点における同時接続プレイヤ数(提供ゲームにログインしているプレイヤ数)と所定の閾値Nとを比較し(ステップS110)、同時接続プレイヤ数が閾値N未満である場合は(ステップS110においてYES)、ログイン処理が行われたプレイヤ端末30の処理モードとして、ゲームを進行させるためのゲーム進行処理をサーバ10側で実行する「サーバモード」(第2のモード)を設定する。一方、同時接続プレイヤ数が閾値N以上である場合は(ステップS110においてNO)、当該プレイヤ端末30の処理モードとして、ゲーム進行処理をプレイヤ端末30側で実行する「端末モード」(第1のモード)を設定する。このように、この例では、ログイン時における同時接続プレイヤ数に応じて、サーバモード又は端末モードの何れかの処理モードが設定され、具体的には、同時接続プレイヤ数が閾値N未満である間は、プレイヤ端末30の処理モードとしてサーバモードが設定され、同時接続プレイヤ数が閾値N以上となると、それ以降にログイン処理が行われるプレイヤ端末30の処理モードとして端末モードが設定される。   Next, the server 10 compares the number of simultaneously connected players (the number of players logged into the provided game) at that time with a predetermined threshold N (step S110), and the number of simultaneously connected players is less than the threshold N. (YES in step S110) sets, as the processing mode of the player terminal 30 that has undergone the login process, a “server mode” (second mode) in which a game progress process for advancing the game is executed on the server 10 side. To do. On the other hand, when the number of simultaneously connected players is equal to or greater than the threshold value N (NO in step S110), as the processing mode of the player terminal 30, a “terminal mode” (first mode) in which game progress processing is executed on the player terminal 30 side. ) Is set. As described above, in this example, either the server mode or the terminal mode is set according to the number of simultaneously connected players at the time of login. Specifically, while the number of simultaneously connected players is less than the threshold N. The server mode is set as the processing mode of the player terminal 30, and when the number of simultaneously connected players is equal to or greater than the threshold value N, the terminal mode is set as the processing mode of the player terminal 30 in which login processing is performed thereafter.

図5は、この例において、接続中の(提供ゲームにログイン中の)プレイヤに関する情報を管理するための接続中プレイヤ管理テーブルにおいて管理される情報の具体例を示す。接続中プレイヤ管理テーブルは、ストレージ15等において管理され、図示するように、接続中(ログイン中)の個別のプレイヤの「プレイヤアカウント」に対応付けて、プレイヤアカウントが通常アカウントであるかゲストアカウントであるかを示す「アカウント種別」、接続中のプレイヤのプレイヤ端末30の機種を示す「端末機種」、「処理モード」、及び「模擬演算処理実行中フラグ」等の情報を管理する。模擬演算処理実行中フラグは、サーバ10からの依頼に従って、処理モードが端末モードである他のプレイヤ端末30において実行されるゲーム進行処理(演算処理)を模擬的に実行中であるか否かを示す情報である。   FIG. 5 shows a specific example of information managed in the connected player management table for managing information related to the connected player (logged in to the provided game) in this example. The connected player management table is managed in the storage 15 or the like, and as shown in the figure, the player account is a normal account or a guest account in association with the “player account” of each connected player (logged in). Information such as an “account type” indicating whether or not there is present, a “terminal model” indicating the model of the player terminal 30 of the connected player, a “processing mode”, and a “simulation calculation processing execution flag” are managed. The simulation calculation process execution flag indicates whether or not a game progress process (calculation process) executed in another player terminal 30 whose processing mode is the terminal mode is being executed in accordance with a request from the server 10. It is information to show.

図6は、同時接続プレイヤ数が閾値N未満である状態が継続しており、複数のプレイヤ端末30(図6では、3台のプレイヤ端末30A、B、C)の全ての処理モードがサーバモードである場合の、ゲーム提供サーバ10とプレイヤ端末30との間の通信を例示する。図示するように、プレイヤ端末30の処理モードがサーバモードである場合、サーバ10のゲーム進行制御部45において、複数のプレイヤ端末30A、B、Cのために複数のゲーム進行処理451A、B、Cがそれぞれ実行される。当該ゲーム進行処理451は、ゲームを進行させるための様々な演算を行う演算処理4511と、当該演算処理4511による演算結果等に基づく画面を描画するための描画処理4512とを含む。また、ゲーム進行処理451A、B、Cは、各プレイヤ端末30A、B、Cから送信される、当該プレイヤ端末30において入力される(プレイヤによる操作入力に基づく)入力情報A、B、Cに基づいて実行され、ゲームの進行に応じた画面情報A、B、Cを出力して各プレイヤ端末30A、B、Cに送信する。当該画面情報を受信したプレイヤ端末30では、対応する画面が表示される。また、ゲーム進行処理451の実行に伴って、情報記憶管理部41のプレイヤ情報テーブル411において管理されている各プレイヤの状態情報が更新される。   In FIG. 6, the state in which the number of simultaneously connected players is less than the threshold value N continues, and all processing modes of a plurality of player terminals 30 (three player terminals 30A, B, and C in FIG. 6) are server modes. In this case, communication between the game providing server 10 and the player terminal 30 is illustrated. As shown in the figure, when the processing mode of the player terminal 30 is the server mode, the game progress control unit 45 of the server 10 uses a plurality of game progress processes 451A, B, C for the plurality of player terminals 30A, B, C. Are executed respectively. The game progress process 451 includes a calculation process 4511 for performing various calculations for advancing the game, and a drawing process 4512 for drawing a screen based on a calculation result or the like by the calculation process 4511. The game progress processes 451A, B, and C are based on input information A, B, and C (based on operation input by the player) input from the player terminals 30 and transmitted from the player terminals 30A, B, and C. The screen information A, B, C corresponding to the progress of the game is output and transmitted to the player terminals 30A, B, C. The player terminal 30 that has received the screen information displays a corresponding screen. As the game progress process 451 is executed, the status information of each player managed in the player information table 411 of the information storage management unit 41 is updated.

図7は、同時接続プレイヤ数が閾値N以上となり、複数のプレイヤ端末30の一部のプレイヤ端末30(図7では、プレイヤ端末30D)の処理モードが端末モードとなっている場合の、ゲーム提供サーバ10とプレイヤ端末30との間の通信を例示する。図示するように、処理モードがサーバモードであるプレイヤ端末30A、B、Cのためのゲーム進行処理451A、B、Cは、サーバ10のゲーム進行制御部45において実行される一方、処理モードが端末モードであるプレイヤ端末30Dのためのゲーム進行処理451Dは、当該プレイヤ端末30Dにおいて実行される。プレイヤ端末30D側で実行されるゲーム進行処理451Dもまた、演算処理4511と描画処理4512とを含む。また、プレイヤ端末30D側で実行されるゲーム進行処理451Dは、プレイヤ端末30Dにおいて入力される入力情報Dに基づいて実行され、サーバ10から送信される対応するプレイヤの更新前の状態情報の更新を伴う。対応するプレイヤの更新後の状態情報は、所定のタイミングで(例えば、複数のエリアによって構成されるステージをクリアする都度等)、プレイヤ端末30Dからサーバ10に対して送信される。更新後の状態情報を受信したサーバ10は、当該更新後の状態情報に基づいて、情報記憶管理部41のプレイヤ情報テーブル411において管理されている状態情報を更新する。   FIG. 7 shows a game provision in the case where the number of simultaneously connected players is equal to or greater than the threshold value N and the processing mode of some of the player terminals 30 (player terminal 30D in FIG. 7) is the terminal mode. The communication between the server 10 and the player terminal 30 is illustrated. As shown in the figure, the game progress processes 451A, B, and C for the player terminals 30A, B, and C whose processing mode is the server mode are executed in the game progress control unit 45 of the server 10, while the processing mode is the terminal. The game progress process 451D for the player terminal 30D in the mode is executed in the player terminal 30D. The game progress process 451D executed on the player terminal 30D side also includes a calculation process 4511 and a drawing process 4512. In addition, the game progress process 451D executed on the player terminal 30D side is executed based on the input information D input at the player terminal 30D, and updates the state information before update of the corresponding player transmitted from the server 10. Accompany. The updated status information of the corresponding player is transmitted from the player terminal 30D to the server 10 at a predetermined timing (for example, every time a stage constituted by a plurality of areas is cleared). The server 10 that has received the updated state information updates the state information managed in the player information table 411 of the information storage management unit 41 based on the updated state information.

図8は、処理モードが端末モードであるプレイヤ端末30からのゲームの進行要求に応じてサーバ10が実行する処理を例示するフロー図である。ゲームの進行要求は、所定のタイミング(例えば、クエストを開始するタイミング等)で行われる。処理モードが端末モードであるプレイヤ端末30からゲームの進行要求を受け付けると、サーバ10は、まず、図示するように、当該プレイヤ端末(以下、「本プレイヤ端末」と言うことがある。)30において実行される演算処理を模擬的に実行する模擬演算処理用の他のプレイヤ端末30を選択する(ステップS200)。この例では、接続中の複数のプレイヤ端末30の中から、以下の5つの条件の全てを満たす2台の模擬処理用プレイヤ端末30が選択される。
(1)対応するプレイヤが、本プレイヤ端末30のプレイヤのフレンドでない。
(2)対応するプレイヤが、ブラックリスト対象でない。
(3)通常アカウントでログインされている。
(4)処理モードがサーバモードである。
(5)模擬演算処理実行中でない(他のプレイヤ端末30の演算処理を模擬的に実行中でない)。
FIG. 8 is a flowchart illustrating processing executed by the server 10 in response to a game progress request from the player terminal 30 whose processing mode is the terminal mode. The game progress request is made at a predetermined timing (for example, a timing to start a quest). When a game progress request is received from the player terminal 30 whose processing mode is the terminal mode, the server 10 first, in the player terminal (hereinafter sometimes referred to as “the present player terminal”) 30 as shown in the figure. The other player terminal 30 for the simulated computation process that simulates the computation process to be executed is selected (step S200). In this example, two simulation processing player terminals 30 satisfying all of the following five conditions are selected from the plurality of player terminals 30 being connected.
(1) The corresponding player is not a friend of the player of the player terminal 30.
(2) The corresponding player is not a blacklist target.
(3) You are logged in with a normal account.
(4) The processing mode is the server mode.
(5) The simulation calculation process is not being executed (the calculation process of another player terminal 30 is not being executed in a simulated manner).

これらの条件を満たすか否かは、プレイヤ情報テーブル411、又は、接続中プレイヤ管理テーブルを参照することによって判断される。なお、これらの条件に適合する複数のプレイヤ端末30の中から2台の模擬処理用プレイヤ端末30を選択する際に、処理性能が高いプレイヤ端末30を優先するようにしても良い。プレイヤ端末30の処理性能は、接続中プレイヤ管理テーブルの端末機種によって判断することができる。   Whether these conditions are satisfied is determined by referring to the player information table 411 or the connected player management table. In addition, when selecting two simulation processing player terminals 30 from among a plurality of player terminals 30 that meet these conditions, the player terminal 30 having high processing performance may be given priority. The processing performance of the player terminal 30 can be determined by the terminal model in the connected player management table.

そして、サーバ10は、ゲームの進行要求を行った本プレイヤ端末30、及び、選択された2台の模擬演算処理用プレイヤ端末30に対して、本プレイヤ端末30に対応するプレイヤの更新前の状態情報を提供する(ステップS210)。   And the server 10 is the state before the update of the player corresponding to the player terminal 30 with respect to the player terminal 30 that made the game progress request and the selected two simulation calculation processing player terminals 30. Information is provided (step S210).

続いて、サーバ10は、本プレイヤ端末30から更新後の状態情報を取得するまでの間(ステップS230においてNO)、本プレイヤ端末30においてプレイヤによって入力される入力情報を当該本プレイヤ端末30から繰り返し取得して模擬演算処理用プレイヤ端末30に対して提供する(ステップS220)。上述したように、処理モードが端末モードであるプレイヤ端末30は、例えば、複数のエリアによって構成されるステージをクリアする毎に、対応するプレイヤの更新後の状態情報をサーバ10に送信する。   Subsequently, the server 10 repeats input information input by the player at the player terminal 30 from the player terminal 30 until the updated state information is acquired from the player terminal 30 (NO at step S230). Obtained and provided to the simulation calculation processing player terminal 30 (step S220). As described above, each time the player terminal 30 whose processing mode is the terminal mode clears a stage constituted by a plurality of areas, for example, the player terminal 30 transmits the updated player status information to the server 10.

図9は、図7に例示した処理モードが端末モードであるプレイヤ端末30Dにおいて実行される演算処理4511を模擬的に実行する2台の模擬演算処理用プレイヤ端末30として、プレイヤ端末30A、Bが選択された場合の通信を例示する。図示するように、プレイヤ端末30Dにおいては、当該プレイヤ端末30Dにおいて入力される入力情報Dに基づいてゲーム進行処理451D(演算処理4511及び描画処理4512)が実行される一方、模擬演算処理用プレイヤ端末30A、Bにおいては、サーバ10から繰り返し提供(転送)される、プレイヤ端末30Dにおける入力情報Dに基づいて、模擬的に演算処理4511が実行される(プレイヤ端末30A、Bにおいて、描画処理4512は実行されない)。また、演算処理4511の実行に応じて、プレイヤ端末30A、B、Dの各々において、プレイヤ端末30Dに対応するプレイヤの状態情報が更新される。なお、処理モードがサーバモードであるプレイヤ端末30A、Bのためのゲーム進行処理451A、Bは、上述したように、サーバ10のゲーム進行制御部45において引き続き実行される。   FIG. 9 shows two simulation calculation processing player terminals 30 that simulate the calculation processing 4511 executed in the player terminal 30D whose processing mode illustrated in FIG. 7 is the terminal mode. The communication when selected is illustrated. As shown in the figure, in the player terminal 30D, a game progress process 451D (arithmetic process 4511 and drawing process 4512) is executed based on input information D input in the player terminal 30D, while a simulated arithmetic process player terminal In 30A and B, a calculation process 4511 is simulated based on the input information D in the player terminal 30D repeatedly provided (transferred) from the server 10 (in the player terminals 30A and B, the drawing process 4512 is executed). Not executed). Further, in accordance with the execution of the arithmetic processing 4511, the state information of the player corresponding to the player terminal 30D is updated in each of the player terminals 30A, B, and D. Note that the game progress processing 451A, B for the player terminals 30A, B whose processing mode is the server mode is continuously executed in the game progress control unit 45 of the server 10 as described above.

そして、本プレイヤ端末30から更新後の状態情報を取得すると(ステップS230においてYES)、サーバ10は、プレイヤ情報テーブル411の状態情報を更新すると共に(ステップS240)、模擬演算処理用プレイヤ端末30から、模擬的な演算処理の実行に伴って更新された更新後の状態情報(その時点の状態情報)を取得する(ステップS250)。   When the updated state information is acquired from the player terminal 30 (YES in step S230), the server 10 updates the state information in the player information table 411 (step S240) and from the simulation calculation processing player terminal 30. Then, the updated state information (the state information at that time) updated with the execution of the simulated arithmetic processing is acquired (step S250).

そして、サーバ10は、本プレイヤ端末30及び2台の模擬演算処理用プレイヤ端末30からそれぞれ取得した更新後の状態情報を比較し(ステップS260)、不一致がある場合には(ステップS260においてYES)、不正な処理が実行されたと判定し、当該不正な処理が実行されたプレイヤ端末30を特定する(ステップS270)。ここで、模擬演算処理用のプレイヤ端末30では、本プレイヤ端末30と同様に、本プレイヤ端末30における入力情報に基づいて演算処理4511が実行されているから、当該演算処理4511の実行に伴って更新された更新後の状態情報は一致するはずである。更新後の状態情報に不一致がある場合、例えば、演算処理4511に対応するプログラムに対する不正な改変等が想定される。なお、模擬演算処理用プレイヤ端末30から更新後の状態情報のハッシュ値を取得すると共に、本プレイヤ端末30から取得した更新後の状態情報のハッシュ値を演算し、これらのハッシュ値を比較することによって、更新後の状態情報の不一致を判定するようにしても良い。   Then, the server 10 compares the updated state information acquired from the player terminal 30 and the two simulation calculation processing player terminals 30 (step S260), and if there is a mismatch (YES in step S260). Then, it is determined that an unauthorized process has been executed, and the player terminal 30 on which the unauthorized process has been executed is identified (step S270). Here, in the player terminal 30 for the simulation calculation process, the calculation process 4511 is executed based on the input information in the player terminal 30 as in the case of the player terminal 30, and accordingly the calculation process 4511 is executed. The updated status information should match. When there is a discrepancy in the state information after the update, for example, an unauthorized modification to the program corresponding to the arithmetic processing 4511 is assumed. In addition, the hash value of the updated state information is obtained from the simulated arithmetic processing player terminal 30, the hash value of the updated state information acquired from the player terminal 30 is calculated, and these hash values are compared. Thus, it may be determined whether the updated state information does not match.

不正な処理が実行されたプレイヤ端末30の特定は、具体的には、3台のプレイヤ端末30(本プレイヤ端末30及び2台の模擬演算処理用プレイヤ端末30)のうちの2台のプレイヤ端末30における更新後の状態情報が一致している場合は、残りの1台のプレイヤ端末30において不正な処理が実行されたと判定される。なお、この例では、3台のプレイヤ端末30における更新後の状態情報の全てが異なる場合は、3台のプレイヤ端末30の全てにおいて不正な処理が実行されたと判定される。   The identification of the player terminal 30 that has executed the illegal processing is specifically two player terminals of the three player terminals 30 (the player terminal 30 and the two simulation calculation processing player terminals 30). When the updated state information in 30 matches, it is determined that an unauthorized process has been executed in the remaining one player terminal 30. In this example, if all of the updated state information in the three player terminals 30 are different, it is determined that an unauthorized process has been executed in all of the three player terminals 30.

この例において、不正な処理が実行されたと判定された場合、所定の不正判定時処理が実行される。所定の不正判定時処理は、様々な処理が含まれ得る。例えば、不正な処理が実行されたプレイヤ端末30として特定されたプレイヤ端末30が本プレイヤ端末30である場合はゲームの進行を中止させるようにしても良いし、本プレイヤ端末30であるか否かにかかわらず特定されたプレイヤ端末30におけるゲームの進行を中止させるようにしても良い。本プレイヤ端末30が不正な処理を実行した場合には、ステップS240で更新したプレイヤ情報テーブル411の状態情報が更新前に戻される。このとき、模擬演算処理用プレイヤ端末30での模擬的な演算処理の実行に伴って更新された更新後の状態情報に書き換えてもよい。また、特定されたプレイヤ端末30はブラックリストに登録される。   In this example, when it is determined that an illegal process has been executed, a predetermined fraud determination process is executed. The predetermined fraud determination process may include various processes. For example, when the player terminal 30 specified as the player terminal 30 that has executed the illegal processing is the player terminal 30, the progress of the game may be stopped, or whether or not the player terminal 30 is the player terminal 30. Regardless of this, the progress of the game on the specified player terminal 30 may be stopped. When the player terminal 30 executes an illegal process, the state information in the player information table 411 updated in step S240 is returned before the update. At this time, the updated state information may be rewritten with execution of the simulated arithmetic processing in the simulated arithmetic processing player terminal 30. The identified player terminal 30 is registered in the black list.

図8に例示した処理は、処理モードが端末モードであるプレイヤ端末30からのゲームの進行要求が行われる都度、繰り返し実行される。つまり、処理モードが端末モードである特定のプレイヤ端末30からゲームの進行要求が行われる都度(例えば、クエストを開始する都度)、当該特定のプレイヤ端末30において実行される演算処理4511を模擬的に実行するための模擬演算処理用プレイヤ端末30が新たに選択され、これらのプレイヤ端末30における更新後の状態情報の比較に基づいて、不正な処理の実行が判定される。   The process illustrated in FIG. 8 is repeatedly executed whenever a game progress request is made from the player terminal 30 whose processing mode is the terminal mode. That is, each time a game progress request is made from a specific player terminal 30 whose processing mode is the terminal mode (for example, every time a quest is started), the arithmetic processing 4511 executed in the specific player terminal 30 is simulated. The simulation calculation processing player terminal 30 to be executed is newly selected, and based on the comparison of the updated state information in these player terminals 30, it is determined that the illegal processing is executed.

上述した例では、ログイン時における同時接続プレイヤ数に応じて、サーバモード又は端末モードの何れかの処理モードが設定されるようにしたが、その後、所定の時間間隔で同時接続プレイヤ数を確認し、ログイン時に端末モードが設定されたプレイヤ端末30については、当該同時接続プレイヤ数が閾値N未満となったときに、端末モードからサーバモードに変更しても良い。また、プレイヤ端末30のログイン時に当該プレイヤ端末30の処理モードを設定する方法に代えて、所定の時間間隔で同時接続プレイヤ数を確認し、当該同時接続プレイヤ数が閾値N以上となったときに、その時点で接続中の全てのプレイヤ端末30の中から端末モードに変更する一部のプレイヤ端末30を選択するようにしても良い。   In the example described above, either the server mode or the terminal mode is set in accordance with the number of simultaneously connected players at the time of login. Thereafter, the number of simultaneously connected players is confirmed at a predetermined time interval. The player terminal 30 in which the terminal mode is set at the time of login may be changed from the terminal mode to the server mode when the number of simultaneously connected players becomes less than the threshold value N. Further, instead of the method of setting the processing mode of the player terminal 30 when the player terminal 30 logs in, the number of simultaneously connected players is confirmed at a predetermined time interval, and the number of simultaneously connected players becomes equal to or greater than the threshold value N. Some player terminals 30 to be changed to the terminal mode may be selected from all the player terminals 30 that are currently connected.

上述した例において、本プレイヤ端末30のゲームの進行中に2台の模擬演算処理用プレイヤ端末30の少なくとも一部が離脱(ログアウト、通信切断)してしまうことを想定して、予備の模擬演算処理用プレイヤ端末30(例えば、1又は2台)を予め選択しておき、離脱時に予備の模擬演算処理用プレイヤ端末30に切り替えるようにしても良い。又は、模擬演算処理用プレイヤ端末30の離脱が発生したときに、代わりの模擬演算処理用プレイヤ端末30を選択するようにしても良い。こうすれば、模擬演算処理用プレイヤ端末30の少なくとも一部が離脱した場合であっても、3台のプレイヤ端末30(本プレイヤ端末30及び2台の模擬演算処理用プレイヤ端末30)における更新後の状態情報の比較に基づいて不正な処理が実行されたプレイヤ端末30を特定することを可能とする(2台のプレイヤ端末30(本プレイヤ端末30及び1台の模擬演算処理用プレイヤ端末30)における更新後の状態情報の比較では、どちらのプレイヤ端末30で不正な処理が実行されたのかを判定することができない)。   In the above-described example, it is assumed that at least a part of the two simulation calculation processing player terminals 30 is disconnected (logout, communication disconnection) while the game of the player terminal 30 is in progress. The processing player terminals 30 (for example, one or two) may be selected in advance, and may be switched to the spare simulation calculation processing player terminal 30 when leaving. Alternatively, when the simulation calculation processing player terminal 30 is detached, an alternative simulation calculation processing player terminal 30 may be selected. In this way, even if at least a part of the simulation computation processing player terminal 30 is detached, after the update in the three player terminals 30 (the player terminal 30 and the two simulation computation processing player terminals 30). It is possible to specify the player terminal 30 on which the illegal processing has been executed based on the comparison of the state information (two player terminals 30 (the present player terminal 30 and one simulated arithmetic processing player terminal 30)). In the comparison of the state information after the update, it is not possible to determine which player terminal 30 has executed the illegal process).

以上説明した本実施形態に係るゲーム提供サーバ10は、ゲームを進行させるための所定の処理をプレイヤ端末30側で実行する特定のプレイヤ端末30において入力される入力情報に基づく当該所定の処理の模擬的な実行を1又は複数の他のプレイヤ端末30に依頼し、当該特定のプレイヤ端末30及び1又は複数の他のプレイヤ端末30における所定の処理の実行結果(例えば、特定のプレイヤの更新後の状態情報)の少なくとも一部が異なる場合に不正な処理が実行されたと判定するから、ゲームを進行させるための処理をプレイヤ端末30側で実行する場合のチート行為等の判定を可能とする。つまり、本発明の実施形態は、ゲームを提供するサーバ側の処理負荷を適切に低減させる。   The game providing server 10 according to the present embodiment described above simulates the predetermined process based on the input information input at the specific player terminal 30 that executes the predetermined process for advancing the game on the player terminal 30 side. One or a plurality of other player terminals 30 is requested to execute a specific process, and an execution result of a predetermined process in the specific player terminal 30 and one or a plurality of other player terminals 30 (for example, after a specific player is updated) Since it is determined that an illegal process has been executed when at least a part of (status information) is different, it is possible to determine a cheat action or the like when a process for advancing the game is executed on the player terminal 30 side. That is, the embodiment of the present invention appropriately reduces the processing load on the server side that provides the game.

本発明の他の実施形態においては、複数のプレイヤ端末30の一部が、ゲーム提供サーバ10として機能するように構成され得る。   In another embodiment of the present invention, a part of the plurality of player terminals 30 may be configured to function as the game providing server 10.

本明細書で説明された処理及び手順は、明示的に説明されたもの以外にも、ソフトウェア、ハードウェア又はこれらの任意の組み合わせによって実現される。例えば、本明細書で説明される処理及び手順は、集積回路、揮発性メモリ、不揮発性メモリ、磁気ディスク等の媒体に、当該処理及び手順に相当するロジックを実装することによって実現される。また、本明細書で説明された処理及び手順は、当該処理・手順に相当するコンピュータプログラムとして実装し、各種のコンピュータに実行させることが可能である。   The processes and procedures described in this specification are implemented by software, hardware, or any combination thereof other than those explicitly described. For example, the processes and procedures described in this specification are realized by mounting logic corresponding to the processes and procedures on a medium such as an integrated circuit, a volatile memory, a nonvolatile memory, and a magnetic disk. The processing and procedure described in this specification can be implemented as a computer program corresponding to the processing / procedure and executed by various computers.

本明細書中で説明された処理及び手順が単一の装置、ソフトウェア、コンポーネント、モジュールによって実行される旨が説明されたとしても、そのような処理又は手順は複数の装置、複数のソフトウェア、複数のコンポーネント、及び/又は複数のモジュールによって実行され得る。また、本明細書において説明されたソフトウェア及びハードウェアの要素は、それらをより少ない構成要素に統合して、又はより多い構成要素に分解することによって実現することも可能である。   Even if the processes and procedures described herein are described as being performed by a single device, software, component, or module, such processes or procedures may be performed by multiple devices, multiple software, multiple Component and / or multiple modules. Also, the software and hardware elements described herein can be implemented by integrating them into fewer components or by disassembling them into more components.

本明細書において、発明の構成要素が単数もしくは複数の何れか一方として説明された場合、又は、単数もしくは複数の何れとも限定せずに説明された場合であっても、文脈上別に解すべき場合を除き、当該構成要素は単数又は複数の何れであってもよい。   In the present specification, when the constituent elements of the invention are described as one or a plurality, or when they are described without being limited to one or a plurality of cases, they should be interpreted separately in context. The component may be either singular or plural.

10 ゲーム提供サーバ
20 ネットワーク
30 プレイヤ端末
41 情報記憶管理部
411 プレイヤ情報テーブル
43 基本機能制御部
45 ゲーム進行制御部
451 ゲーム進行処理
4511 演算処理
4512 描画処理
47 不正判定部
DESCRIPTION OF SYMBOLS 10 Game provision server 20 Network 30 Player terminal 41 Information storage management part 411 Player information table 43 Basic function control part 45 Game progress control part 451 Game progress process 4511 Arithmetic process 4512 Drawing process 47 Fraud determination part

Claims (12)

1又は複数のコンピュータプロセッサを備え、ゲームを提供するためのサーバであって、
前記1又は複数のコンピュータプロセッサは、読取可能な命令の実行に応じて、
前記ゲームを進行させるための所定の処理であってプレイヤ端末において入力される入力情報に少なくとも基づいて実行される前記所定の処理の実行モードとして、前記所定の処理をプレイヤ端末側で実行する第1のモードが設定されている特定のプレイヤ端末から、前記特定のプレイヤ端末において入力される特定の入力情報を取得するステップと、
前記特定の入力情報に少なくとも基づく前記所定の処理の模擬的な実行を1又は複数の他のプレイヤ端末に依頼するステップと、
前記特定のプレイヤ端末及び前記1又は複数の他のプレイヤ端末において前記特定の入力情報に少なくとも基づいてそれぞれ実行される前記所定の処理の実行結果の少なくとも一部が異なる場合に、前記特定のプレイヤ端末及び前記1又は複数の他のプレイヤ端末の少なくとも一部において不正な処理が実行されたと判定するステップと、を実行
前記1又は複数のコンピュータプロセッサは、更に、複数のプレイヤ端末の各々の前記所定の処理の実行モードを設定するステップを実行し、
前記設定するステップは、プレイヤ端末の同時接続数が所定の閾値未満である間は、複数のプレイヤ端末の各々の前記所定の処理の実行モードとして、前記所定の処理をサーバ側で実行する第2のモードを設定する一方、プレイヤ端末の同時接続数が前記所定の閾値以上となった場合に、複数のプレイヤ端末の少なくとも一部の前記所定の処理の実行モードとして、前記第1のモードを設定することを含む、
サーバ。
A server comprising one or more computer processors for providing a game,
The one or more computer processors are responsive to execution of readable instructions,
A first process for executing the predetermined process on the player terminal side as an execution mode of the predetermined process, which is a predetermined process for advancing the game and is executed based on at least input information input at the player terminal. Obtaining specific input information input at the specific player terminal from a specific player terminal for which the mode is set;
Requesting one or more other player terminals to perform a simulated execution of the predetermined process based at least on the specific input information;
The specific player terminal when at least a part of the execution result of the predetermined process executed at least based on the specific input information is different between the specific player terminal and the one or more other player terminals. and running, and determining that an illegal process has been executed at least some of the one or more other player terminal,
The one or more computer processors further execute a step of setting an execution mode of the predetermined process for each of the plurality of player terminals,
In the setting step, as long as the number of simultaneous connections of player terminals is less than a predetermined threshold, the predetermined process is executed on the server side as the execution mode of the predetermined process of each of the plurality of player terminals. On the other hand, when the number of simultaneous connections of the player terminals is equal to or greater than the predetermined threshold, the first mode is set as an execution mode of the predetermined process for at least some of the plurality of player terminals. Including
server.
複数のプレイヤの各々の状態情報を少なくとも記憶する記憶装置を更に備え、
前記所定の処理は、対応するプレイヤの状態情報の更新を伴って実行されるように構成されており、
前記1又は複数のコンピュータプロセッサは、更に、前記特定のプレイヤ端末に対して、前記特定のプレイヤ端末に対応する特定のプレイヤの更新前の状態情報を提供するステップと、前記特定のプレイヤ端末における前記所定の処理の実行に伴って更新される前記特定のプレイヤの更新後の状態情報に少なくとも基づいて前記記憶装置に記憶されている前記特定のプレイヤの状態情報を更新するステップと、を実行し、
前記依頼するステップは、前記特定のプレイヤの更新前の状態情報の提供を伴って、前記所定の処理の模擬的な実行を前記1又は複数の他のプレイヤ端末に依頼することを含み、
前記判定するステップは、前記所定の処理の実行結果としての前記特定のプレイヤの更新後の状態情報の少なくとも一部が異なる場合に、前記特定のプレイヤ端末及び前記1又は複数の他のプレイヤ端末の少なくとも一部において不正な処理が実行されたと判定することを含む、
請求項1のサーバ。
A storage device that stores at least state information of each of the plurality of players;
The predetermined process is configured to be executed with the update of the status information of the corresponding player,
The one or more computer processors further provide the specific player terminal with state information before the update of the specific player corresponding to the specific player terminal, and the specific player terminal Updating the state information of the specific player stored in the storage device based at least on the updated state information of the specific player that is updated in accordance with execution of a predetermined process,
The requesting step includes requesting the one or more other player terminals to perform a simulated execution of the predetermined process with provision of state information before the update of the specific player,
In the determination step, when at least part of the updated state information of the specific player as the execution result of the predetermined process is different, the specific player terminal and the one or more other player terminals Including determining that illegal processing has been executed at least in part,
The server of claim 1.
前記依頼するステップは、2以上の他のプレイヤ端末に依頼し、
前記判定するステップは、前記所定の処理の実行結果の少なくとも一部が異なる場合に、前記特定のプレイヤ端末及び前記2以上の他のプレイヤ端末のうち、前記所定の処理の実行結果が同一であるプレイヤ端末の数が最も少ないプレイヤ端末において不正な処理が実行されたと判定することを含む、
請求項1又は2のサーバ。
The requesting step requests two or more other player terminals,
In the determining step, when at least a part of the execution result of the predetermined process is different, the execution result of the predetermined process is the same among the specific player terminal and the two or more other player terminals. Including determining that an unauthorized process has been executed in the player terminal having the smallest number of player terminals,
The server according to claim 1 or 2 .
前記1又は複数のコンピュータプロセッサは、更に、複数のプレイヤ端末の中から、所定のルールに従って、前記所定の処理の模擬的な実行を依頼する前記1又は複数の他のプレイヤ端末を選択するステップを実行する、
請求項1ないし何れかのサーバ。
The one or more computer processors further include a step of selecting, from a plurality of player terminals, the one or more other player terminals that request a simulated execution of the predetermined process according to a predetermined rule. Run,
Claims 1 to 3 or a server.
前記所定のルールは、所定のブラックリストに含まれるプレイヤ端末を除外するというルールを含む、
請求項のサーバ。
The predetermined rule includes a rule of excluding a player terminal included in a predetermined black list.
The server of claim 4 .
前記所定のルールは、ゲストアカウントでログインされているプレイヤ端末よりも通常アカウントでログインされているプレイヤ端末を優先して選択するというルールを含む、
請求項4又は5のサーバ。
The predetermined rule includes a rule of preferentially selecting a player terminal logged in with a normal account over a player terminal logged in with a guest account.
The server according to claim 4 or 5 .
前記所定のルールは、前記特定のプレイヤ端末に対応する特定のプレイヤと所定の関係を有する他のプレイヤのプレイヤ端末を除外するというルールを含む、
請求項4ないし6何れかのサーバ。
The predetermined rule includes a rule of excluding player terminals of other players having a predetermined relationship with a specific player corresponding to the specific player terminal.
The server according to claim 4 .
記所定のルールは、前記所定の処理の実行モードとして前記第1のモードが設定されているプレイヤ端末よりも、前記所定の処理の実行モードとして前記第2のモードが設定されているプレイヤ端末を優先して選択するというルールを含む、
請求項4ないし7何れかのサーバ。
Player terminal before Symbol predetermined rule, than the player terminal in which the first mode as the running mode of the predetermined processing is set, the second mode is set as the execution mode of the predetermined processing Including the rule of prioritizing selection,
The server according to any one of claims 4 to 7 .
前記所定のルールは、模擬的に実行中の前記所定の処理の数が少ないプレイヤ端末を優先して選択するというルールを含む、
請求項4ないし8何れかのサーバ。
The predetermined rule includes a rule of preferentially selecting player terminals with a small number of the predetermined processes being executed in simulation.
The server according to any one of claims 4 to 8 .
前記所定のルールは、処理性能が高いプレイヤ端末を優先して選択するというルールを含む、
請求項4ないし9何れかのサーバ
The predetermined rule includes a rule of preferentially selecting a player terminal with high processing performance.
The server according to claim 4 .
1又は複数のコンピュータによって実行され、ゲームを提供するための方法であって、
前記ゲームを進行させるための所定の処理であってプレイヤ端末において入力される入力情報に少なくとも基づいて実行される前記所定の処理の実行モードとして、前記所定の処理をプレイヤ端末側で実行する第1のモードが設定されている特定のプレイヤ端末から、前記特定のプレイヤ端末において入力される特定の入力情報を取得するステップと、
前記特定の入力情報に少なくとも基づく前記所定の処理の模擬的な実行を1又は複数の他のプレイヤ端末に依頼するステップと、
前記特定のプレイヤ端末及び前記1又は複数の他のプレイヤ端末において前記特定の入力情報に少なくとも基づいてそれぞれ実行される前記所定の処理の実行結果の少なくとも一部が異なる場合に、前記特定のプレイヤ端末及び前記1又は複数の他のプレイヤ端末の少なくとも一部において不正な処理が実行されたと判定するステップと、を備え、
前記方法は、更に、複数のプレイヤ端末の各々の前記所定の処理の実行モードを設定するステップを備え、
前記設定するステップは、プレイヤ端末の同時接続数が所定の閾値未満である間は、複数のプレイヤ端末の各々の前記所定の処理の実行モードとして、前記所定の処理をサーバ側で実行する第2のモードを設定する一方、プレイヤ端末の同時接続数が前記所定の閾値以上となった場合に、複数のプレイヤ端末の少なくとも一部の前記所定の処理の実行モードとして、前記第1のモードを設定することを含む、
方法。
A method for providing a game executed by one or more computers, comprising:
A first process for executing the predetermined process on the player terminal side as an execution mode of the predetermined process, which is a predetermined process for advancing the game and is executed based on at least input information input at the player terminal. Obtaining specific input information input at the specific player terminal from a specific player terminal for which the mode is set;
Requesting one or more other player terminals to perform a simulated execution of the predetermined process based at least on the specific input information;
The specific player terminal when at least a part of the execution result of the predetermined process executed at least based on the specific input information is different between the specific player terminal and the one or more other player terminals. and Bei give a, and determining the illegal operation has been performed at least a portion of the one or more other player terminal,
The method further includes a step of setting an execution mode of the predetermined process for each of a plurality of player terminals,
In the setting step, as long as the number of simultaneous connections of player terminals is less than a predetermined threshold, the predetermined process is executed on the server side as the execution mode of the predetermined process of each of the plurality of player terminals. On the other hand, when the number of simultaneous connections of the player terminals is equal to or greater than the predetermined threshold, the first mode is set as an execution mode of the predetermined process for at least some of the plurality of player terminals. Including
Method.
ゲームを提供するためのプログラムであって、
1又は複数のコンピュータ上で実行されることに応じて、前記1又は複数のコンピュータに、
前記ゲームを進行させるための所定の処理であってプレイヤ端末において入力される入力情報に少なくとも基づいて実行される前記所定の処理の実行モードとして、前記所定の処理をプレイヤ端末側で実行する第1のモードが設定されている特定のプレイヤ端末から、前記特定のプレイヤ端末において入力される特定の入力情報を取得するステップと、
前記特定の入力情報に少なくとも基づく前記所定の処理の模擬的な実行を1又は複数の他のプレイヤ端末に依頼するステップと、
前記特定のプレイヤ端末及び前記1又は複数の他のプレイヤ端末において前記特定の入力情報に少なくとも基づいてそれぞれ実行される前記所定の処理の実行結果の少なくとも一部が異なる場合に、前記特定のプレイヤ端末及び前記1又は複数の他のプレイヤ端末の少なくとも一部において不正な処理が実行されたと判定するステップと、を実行させ、
前記1又は複数のコンピュータに、更に、複数のプレイヤ端末の各々の前記所定の処理の実行モードを設定するステップを実行させ、
前記設定するステップは、プレイヤ端末の同時接続数が所定の閾値未満である間は、複数のプレイヤ端末の各々の前記所定の処理の実行モードとして、前記所定の処理をサーバ側で実行する第2のモードを設定する一方、プレイヤ端末の同時接続数が前記所定の閾値以上となった場合に、複数のプレイヤ端末の少なくとも一部の前記所定の処理の実行モードとして、前記第1のモードを設定することを含む、
プログラム。
A program for providing a game,
In response to being executed on one or more computers, the one or more computers,
A first process for executing the predetermined process on the player terminal side as an execution mode of the predetermined process, which is a predetermined process for advancing the game and is executed based on at least input information input at the player terminal. Obtaining specific input information input at the specific player terminal from a specific player terminal for which the mode is set;
Requesting one or more other player terminals to perform a simulated execution of the predetermined process based at least on the specific input information;
The specific player terminal when at least a part of the execution result of the predetermined process executed at least based on the specific input information is different between the specific player terminal and the one or more other player terminals. And a step of determining that an unauthorized process has been executed in at least a part of the one or more other player terminals ,
Causing the one or more computers to further execute a step of setting an execution mode of the predetermined processing of each of the plurality of player terminals;
In the setting step, as long as the number of simultaneous connections of player terminals is less than a predetermined threshold, the predetermined process is executed on the server side as the execution mode of the predetermined process of each of the plurality of player terminals. On the other hand, when the number of simultaneous connections of the player terminals is equal to or greater than the predetermined threshold, the first mode is set as an execution mode of the predetermined process for at least some of the plurality of player terminals. Including
program.
JP2018043454A 2018-03-09 2018-03-09 Server, method, and program for providing game Active JP6412667B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018043454A JP6412667B1 (en) 2018-03-09 2018-03-09 Server, method, and program for providing game

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018043454A JP6412667B1 (en) 2018-03-09 2018-03-09 Server, method, and program for providing game

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2018185209A Division JP7178230B2 (en) 2018-09-28 2018-09-28 SERVER, METHOD AND PROGRAM FOR PROVIDING A GAME

Publications (2)

Publication Number Publication Date
JP6412667B1 true JP6412667B1 (en) 2018-10-24
JP2019154667A JP2019154667A (en) 2019-09-19

Family

ID=63920640

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018043454A Active JP6412667B1 (en) 2018-03-09 2018-03-09 Server, method, and program for providing game

Country Status (1)

Country Link
JP (1) JP6412667B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114404999A (en) * 2022-01-13 2022-04-29 宝清县腾康网络科技有限公司 Big data wind control processing method and storage medium applied to cloud game protection

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006006473A (en) * 2004-06-23 2006-01-12 Sega Corp Fraudulence detection method for online game
JP2007509405A (en) * 2003-10-20 2007-04-12 ソニー・コンピュータ・エンタテインメント・アメリカ・インク Island Recovery in a Peer-to-Peer Relay Network
JP2013114313A (en) * 2011-11-25 2013-06-10 Nintendo Co Ltd Communication system, communication program, information processing device, server, and communication method

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007509405A (en) * 2003-10-20 2007-04-12 ソニー・コンピュータ・エンタテインメント・アメリカ・インク Island Recovery in a Peer-to-Peer Relay Network
JP2006006473A (en) * 2004-06-23 2006-01-12 Sega Corp Fraudulence detection method for online game
JP2013114313A (en) * 2011-11-25 2013-06-10 Nintendo Co Ltd Communication system, communication program, information processing device, server, and communication method

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114404999A (en) * 2022-01-13 2022-04-29 宝清县腾康网络科技有限公司 Big data wind control processing method and storage medium applied to cloud game protection
CN114404999B (en) * 2022-01-13 2022-12-23 游酷盛世科技(北京)有限公司 Big data wind control processing method and storage medium applied to cloud game protection

Also Published As

Publication number Publication date
JP2019154667A (en) 2019-09-19

Similar Documents

Publication Publication Date Title
US20240024784A1 (en) Server device, control method performed by the server device, program, and terminal device
US9740761B2 (en) Management of application state data
US8747202B2 (en) Video game with automatic combination of acquired items
US9120022B2 (en) Game control server apparatus
JP7279130B2 (en) Program, game system and game service providing method
US9426212B2 (en) Sharing an application configuration among social networks
CN109499069B (en) Operation result checking method and device, storage medium and electronic device
CN110585718A (en) Game processing method and information processing device
US9089779B2 (en) Game control apparatus for a sacrifice command in a game
CN114504827A (en) Method, system, electronic device and storage medium for verifying cheating of battle game
JP6412667B1 (en) Server, method, and program for providing game
JP2019037582A (en) Game system and computer program used therefor
JP2021037060A (en) System, method, and program for providing predetermined game, and method for creating classification of decks
JP2007038011A (en) System and method for on-line flash game provision, method for providing web page for performing flash game, storage medium recorded with method performing program and web server providing web page
US20150375122A1 (en) Systems and methods for controlling multiple accounts
JP2019155059A (en) Server, method, and program for providing game
CN114344913B (en) Game data processing method, device, equipment and readable storage medium
JP2019037784A (en) Game system and computer program used therefor
JP7335739B2 (en) SYSTEM, METHOD AND PROGRAM FOR PROVIDING A GAME
JP6560807B2 (en) System, method, and program for providing game
JP7349833B2 (en) Systems, methods, and programs for providing games
JP2021003177A (en) Game system, game method and game program
JP2020039534A (en) System, method, and program for providing lottery
US9692803B2 (en) Computer device, system and methods for controlling an exchange of objects between devices
JP2019195676A (en) System, method, and program for providing game

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180309

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20180309

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20180516

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180522

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180719

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180911

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180928

R150 Certificate of patent or registration of utility model

Ref document number: 6412667

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250