JP2022087150A - オンラインゲームの同期方法、オンラインゲームの同期システム、サーバ、及びオンラインゲームの同期プログラム - Google Patents

オンラインゲームの同期方法、オンラインゲームの同期システム、サーバ、及びオンラインゲームの同期プログラム Download PDF

Info

Publication number
JP2022087150A
JP2022087150A JP2022055247A JP2022055247A JP2022087150A JP 2022087150 A JP2022087150 A JP 2022087150A JP 2022055247 A JP2022055247 A JP 2022055247A JP 2022055247 A JP2022055247 A JP 2022055247A JP 2022087150 A JP2022087150 A JP 2022087150A
Authority
JP
Japan
Prior art keywords
mobile terminal
game
information
event
event information
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.)
Granted
Application number
JP2022055247A
Other languages
English (en)
Other versions
JP7234440B2 (ja
Inventor
ゴールド・ロバート・ジェイ
J Gold Robert
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.)
GREE Inc
Original Assignee
GREE Inc
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 GREE Inc filed Critical GREE Inc
Publication of JP2022087150A publication Critical patent/JP2022087150A/ja
Application granted granted Critical
Publication of JP7234440B2 publication Critical patent/JP7234440B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/70Game security or game management aspects
    • A63F13/77Game security or game management aspects involving data related to game devices or game servers, e.g. configuration data, software version or amount of memory
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/55Push-based network services
    • 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/45Controlling the progress of the video game
    • A63F13/49Saving the game status; Pausing or ending the game
    • A63F13/493Resuming a game, e.g. after pausing, malfunction or power failure
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/40Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterised by details of platform network
    • A63F2300/402Communication between platforms, i.e. physical link to protocol
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/40Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterised by details of platform network
    • A63F2300/407Data transfer via internet
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/40Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterised by details of platform network
    • A63F2300/408Peer to peer connection
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/50Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
    • A63F2300/53Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers details of basic data processing
    • A63F2300/534Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers details of basic data processing for network load management, e.g. bandwidth optimization, latency reduction
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/50Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
    • A63F2300/55Details of game data or player data management
    • A63F2300/5526Game data structure
    • A63F2300/5533Game data structure using program state or machine event data, e.g. server keeps track of the state of multiple players on in a multiple player game

Abstract

【課題】一元的な情報管理を行なう必要がなく、オンライン通信時の各機の処理負担を軽減すると共に、オフライン環境での処理を継続する。【解決手段】オンラインゲームの同期方法であって、サーバ2,3が、オフライン状態からオンライン状態となった第1クライアント端末4から、オフライン状態の間にゲームを進行させることにより発生したイベントに関わる第1情報を受信するステップと、第1情報に対応するイベントの種類に基づき、第1情報に対応するイベントを成立させたとき第2クライアント端末5との間で同期がとれるか否かを判定するステップと、同期がとれると判定した場合に、第1情報を第2クライアント端末5に送信し、第1情報に対応するイベントを成立させたとき第2クライアント端末5との間で同期がとれないと判定した場合に、第1情報を第2クライアント端末5に送信しないステップと、を実行する。【選択図】図10

Description

本発明は、複数の携帯端末間でオンラインゲームを行なうためのオンラインゲームの同期方法、オンラインゲームの同期システム、サーバ、クライアント端末、及びオンラインゲームの同期プログラムに関する。
近年、インターネットの普及により、ユーザが操作する携帯端末側のクライアント機と、ゲーム等を提供する側が用意するサーバ機とで、例えばゲーム情報やゲームの進行に関する情報、ユーザ情報など同一の情報を保管しておく必要が多く存在する。この種のサーバ機では、ゲームプログラムやゲーム管理上の上記した情報をデータベースを用いて一元的に管理する。
しかるに、クライアント機とサーバ機とで上記した同一の情報を保管する場合、無線通信を行なうクライアント機の携帯端末が、通信環境の悪化等に伴ってオフライン状態となると、クライアント機とサーバ機とで保管する情報に差異が生じることになる。
この種の事態に関して、従来では、複数のプレイヤ間でゲーム空間を割当てながらゲームを実行するようなゲームで、オフライン状態であってもクライアント機が自機に割り当てられたゲーム空間を単独で使用する間はゲームを続行でき、その後のオンライン復帰時にオフライン状態での内容を反映することが可能な技術が考えられている。
特開2002-066139号公報
しかしながら、従来の技術では、他のゲーム空間でゲームを実行する必要がある場合、すなわち他のプレイヤに割当てられたゲーム空間や共用のゲーム空間を使用する場合には、対処することが困難であり、一元的な管理を行なうサーバ機による煩雑な同期処理が必要となる。
本発明の目的は、一元的な情報管理を行なう必要がなく、オンライン通信時の各機の処理負担を軽減すると共に、オフライン環境での処理を継続することにある。
本発明の一態様は、ゲーム処理に関わる情報を、サーバを介して第1クライアント端末と第2クライアント端末との間で送受信することが可能なオンラインゲームの同期方法であって、前記サーバが、オフライン状態からオンライン状態となった前記第1クライアント端末から、前記オフライン状態の間にゲームを進行させることにより発生したイベントに関わる第1情報を受信する第1ステップと、前記第1情報に対応するイベントを成立させたとき前記第2クライアント端末との間で同期がとれる場合に、前記第1情報に対応する第2情報を前記第2クライアント端末に送信し、前記第1情報に対応するイベントを成立させたとき前記第2クライアント端末との間で同期がとれない場合に、前記第2情報を前記第2クライアント端末に送信しない第2ステップと、を実行する。
本発明の一態様は、サーバ、第1クライアント端末、及び第2クライアント端末を含むオンラインゲームの同期システムであって、前記第1クライアント端末が、オフライン状態の間にゲームを進行させることにより発生したイベントに関わる第1情報を前記サーバに送信し、前記サーバが、オフライン状態からオンライン状態となった前記第1クライアント端末から、前記第1情報を受信し、前記第1情報に対応するイベントを成立させたとき前記第2クライアント端末との間で同期がとれる場合に、前記第1情報に対応する第2情報を前記第2クライアント端末に送信し、前記第1情報に対応するイベントを成立させたとき前記第2クライアント端末との間で同期がとれない場合に、前記第2情報を前記第2クライアント端末に送信しない。
本発明の一態様は、第1クライアント端末及び第2クライアント端末に接続可能なサーバであって、オフライン状態からオンライン状態となった前記第1クライアント端末から、前記オフライン状態の間にゲームを進行させることにより発生したイベントに関わる第1情報を受信する第1手段と、前記第1情報に対応するイベントを成立させたとき前記第2クライアント端末との間で同期がとれる場合に、前記第1情報に対応する第2情報を前記第2クライアント端末に送信し、前記第1情報に対応するイベントを成立させたとき前記第2クライアント端末との間で同期がとれない場合に、前記第2情報を前記第2クライアント端末に送信しない第2手段と、を備える。
本発明の一態様は、第1クライアント端末及び第2クライアント端末に接続可能なサーバが実行するオンラインゲームの同期プログラムであって、前記サーバに、オフライン状態からオンライン状態となった前記第1クライアント端末から、前記オフライン状態の間にゲームを進行させることにより発生したイベントに関わる第1情報を受信する第1ステップと、前記第1情報に対応するイベントを成立させたとき前記第2クライアント端末との間で同期がとれる場合に、前記第1情報に対応する第2情報を前記第2クライアント端末に送信し、前記第1情報に対応するイベントを成立させたとき前記第2クライアント端末との間で同期がとれない場合に、前記第2情報を前記第2クライアント端末に送信しない第2ステップと、を実行させる。
本発明によれば、一元的な情報管理を行なう必要がなく、オンライン通信時の各機の処理負担を軽減すると共に、オフライン環境での処理を継続することが可能となる。
図1は、本発明の一実施形態に係るオンラインゲームシステムが使用される環境の一例を説明する図である。 図2は、同実施形態に係るサーバとクライアント間の接続アーキテクチャの概念を示す図である。 図3は、同実施形態に係るサーバの構成の一例を示す図である。 図4は、同実施形態に係るクライアントの構成の一例を示す図である。 図5は、同実施形態に係るサーバ-クライアント間で送受されるイベント情報の内容を例示する図である。 図6は、同実施形態に係るオンライン状態でのイベント情報の表面的な処理経路を示す図である。 図7は、同実施形態に係るオンライン状態でのイベント情報の詳細な処理経路を示す図である。 図8は、同実施形態に係るオフライン状態でのゲームの同期の概念を示す図である。 図9は、同実施形態に係るオフライン状態からオンライン状態に復帰した後のイベント情報の詳細な処理経路を示す図である。 図10は、同実施形態におけるオンラインゲームを同期するための具体的なイベント情報の処理経路の一例を示す図である。 図11Aは、同実施形態におけるゲームの進行に伴って携帯端末Aから携帯端末Bに送信されるイベント情報の具体例を示す図である。 図11Bは、同実施形態におけるゲームの進行に伴って携帯端末Aから携帯端末Bに送信されるイベント情報の具体例を示す図である。 図12は、同実施形態におけるイベント情報の具体的な内容を示す図である。 図13は、同実施形態における携帯端末が一時的にオフライン状態となった状況のイベント情報の処理経路の一例を示す図である。 図14は、同実施形態における携帯端末がオンライン状態に復帰した状況のイベント情報の処理経路の一例を示す図である。 図15Aは、同実施形態におけるゲームの進行に伴って携帯端末Aから携帯端末Bに送信されるイベント情報の具体例を示す図である。 図15Bは、同実施形態におけるゲームの進行に伴って携帯端末Aから携帯端末Bに送信されるイベント情報の具体例を示す図である。 図16は、同実施形態における携帯端末において発生するイベント情報の一例を示す図である。 図17Aは、同実施形態に係る対戦ゲームにおけるイベント情報の発生を例示する図である。 図17Bは、同実施形態に係る対戦ゲームにおけるイベント情報の発生を例示する図である。 図18Aは、同実施形態に係る対戦ゲームにおけるイベント情報の発生を例示する図である。 図18Bは、同実施形態に係る対戦ゲームにおけるイベント情報の発生を例示する図である。
以下、図面を参照して本発明の一実施形態に係るオンラインゲームシステムについて説明する。
図1は、同実施形態に係るオンラインゲームシステムが使用される環境の一例を説明する図である。図1では、インターネットなどのネットワーク1に対して、ウェブサーバ装置2,3が接続されると共に、本システムでプレイヤが使用するクライアント装置となる携帯端末4,5が、アクセスポイント(AP)6あるいは基地局7を介して接続される。
ウェブサーバ装置2,3は、本実施形態に係るオンラインゲームシステムを実現するためのコンピュータであり、オンラインゲームのサービスを提供するべくネットワーク1に対して並列に設置している。
一方、クライアント側の携帯端末4,5は、スマートフォン、フィーチャー・フォン(feature phone)などにより実現される。携帯端末4,5は、例えば、Android(登録商標)、iOS(登録商標)などのOS上で動作する。さらに、携帯端末4,5は、ノートブック型のパーソナルコンピュータ、モバイルコンピュータ、タブレット型コンピュータなどであってもよい。携帯端末4,5は、予めオンラインゲームのためのゲームプログラムがインストールされる。
図2は、本実施形態に係るサーバとクライアント間の接続アーキテクチャの概念を示す図である。図2に示すように、A社が提供するオンラインのゲームプログラムまたはアプリケーションプログラムを実行するに当たり、携帯端末4,5には、例えばAIR(登録商標)などで記述された、当該ゲームまたはアプリプログラムのためのアプリケーション実行環境C1が実装されると共に、当該A社のデータベースに接続して課金処理等を行なうためのA社データベース接続キットC2が組込まれる。
これと共に、携帯端末4,5には、ウェブサーバ装置2,3との通信を行なうために、A社が開発した(ソフトウェア)クライアントサイドのフレームワークC3がインストールされる。
一方、A社が運営するウェブサーバ装置2,3では、オンラインゲーム及びアプリケーションを実行するための、例えばNode.js(登録商標)で記述されたサーバ側ジャバ・スクリプト(登録商標)(JS)実行環境S1が設けられると共に、直接携帯端末4,5とデータを送受信するために、上記フレームワークC3と対応するA社(ソフトウェア)サーバーサイドのフレームワークS2が設けられる。
携帯端末4,5のフレームワークC3と、ウェブサーバ装置2,3のフレームワークS2との間では、HTML5(登録商標)で実装された規格である、ウェブソケット(Websocket)を基盤としてゲームのイベント情報が送受される。
このウェブソケットでは、サーバとクライアントとの間で一度でも接続が確立すると、明示的に切断しない限り、通信手順を意識することなくソケット通信によりデータを送受信することができる。すなわち、ウェブソケットでは、サーバとクライアントとの間で接続(ハンドシェイク)が成功すると、データのリクエスト時とレスポンス時に接続手続きをすることなく、データのみの通信を継続して実行することができる。
また、ウェブソケットで接続が確立しているサーバとすべてのクライアントは、同じデータを共有し、リアルタイムで送受信できる。
よって、上記ウェブソケットの規格を利用することで、Ajax(Asynchronous JavaScript(登録商標) +XML)やCometの通信におけるデメリット部分を補い、より効率的にサーバとクライアント間の双方向通信が実現できる。
上記フレームワークC3,S2は、OSに依存しないスクリプト言語として、例えばジャバ・スクリプト(登録商標)を用いて記述されている。そのため、携帯端末4,5のOSがAndroid(登録商標)及びiOS(登録商標)などのいずれかであってもそれらに依存せずに同一接続環境を構築できる。
図3は、本発明の実施の形態に係るオンラインゲームシステムにおけるウェブサーバ装置2の構成の一例を示す図である。なお、ウェブサーバ装置3は、ウェブサーバ装置2と同様の構成を有するものとして詳細な説明を省略する。また、図3に示す構成は一例であって、他の構成を使用することも可能である。
図3に示すように、ウェブサーバ装置2は、バス11を介して、CPU12、通信部13、メモリ14、及び記憶装置15が接続される。
CPU12は、記憶装置15に記憶された本発明の実施の形態に係るゲームプログラム/アプリケーションプログラム22(以下、ゲームプログラム22と称する)と協働して、本発明の実施の形態に係るオンラインゲームのためのゲーム処理を行なう他、ウェブサーバ装置2,3全体の制御を司るものである。CPU12は、ゲームプログラム22を実行することによって、複数のプレイヤが同時に参加できるオンラインゲームを提供する。CPU12は、オンラインゲームに参加する携帯端末4,5から受信されるイベント情報(図5に詳細を示す)を後述するキュー記憶部に記憶し、イベント情報に基づいてゲームを進行させる。また、CPU12は、キュー記憶部に記憶されたイベント情報を、オンラインゲームに参加する他の携帯端末に送信してオンラインゲームの同期を図る。
CPU12は、ゲームプログラム22を実行することにより、オフライン状態から復帰した携帯端末と他の携帯端末において実行されるオンラインゲームの同期を図るために、キュー記憶部に記憶されたイベント情報と復帰した携帯端末からの受信されるイベント情報とを検証する機能を実現する(詳細は、図7~図9に示す)。また、CPU12は、ゲームプログラム22を実行することにより、オンラインゲームの同期を図るためにイベント情報を他の携帯端末に送信するか否かを、イベント情報の内容に基づいて判別する機能(詳細は、図10~図16に示す)を実現する。
通信部13は、ネットワーク1を介したクライアント(携帯端末4,5)などの外部装置との通信の制御を司る。通信部13は、CPU12によりオンラインゲームのためのゲーム処理が実行される場合、ウェブソケットを利用して、イベント情報を含むゲームに関するデータを送受信する。
メモリ14は、CPU12により実行される各種プログラムや、ゲームプログラム22を含む各種プログラムを実行する際に必要とされるワークエリアなどとして使用される。メモリ14は、ゲームプログラム22が実行される場合、クライアント(携帯端末4,5)から受信されるイベント情報を、例えば受信された順番に記憶するためのキュー記憶部として利用される。
記憶装置15は、本実施の形態に係るオンラインゲームに必要とされる各種プログラムやデータを格納するためのものであり、例えば、HDD(Hard Disk Drine)、光ディスクドライブ、DVD(Digital Versatile Disc)、MO(Magnet Optical Disk)などの大容量記憶装置である。記憶装置15には、OS(Operating System)21、ゲームプログラム22、S1,S2(JS実行環境,フレームワーク)用プログラム23が格納される。また、記憶装置15は、キュー記憶部として使用することができる。
OS21は、ウェブサーバ装置2,3の基本的な機能を実現するためのプログラムである。
ゲームプログラム22は、本発明の実施の形態に係るオンラインゲームにおけるサーバ側のゲーム処理を実現するためのプログラムである。なお、本実施の形態のオンラインゲームにおけるゲーム処理は、主に、サーバ側のゲームプログラム22によって行なわれ、表示処理は、クライアント側で行なわれる。なお、サーバ側で行なわれるゲーム処理の一部又は全てをクライアント側で行なってもよい。
S1,S2用プログラム23は、図2に示すJS実行環境S1及びフレームワークS2を実現するためのプログラムである。
図4は、本発明の実施の形態に係る携帯端末4の構成の一例を示す図である。なお、携帯端末5は、携帯端末4と同様の構成を有するものとして詳細な説明を省略する。また、携帯端末4,5は、図4に示す構成以外の構成であっても良い。
図4に示すように、バス31にはCPU32、無線通信部33、メモリ34、GPSモジュール35、カメラ36、記憶装置37、タッチパネルセンサ38、表示制御コントローラ39が接続されている。
CPU32は、記憶装置37に記憶されたゲームプログラム/アプリケーションプログラム37-2(以下、ゲームプログラム37-2と称する)と協働して、本発明の実施の形態に係るオンラインゲームにおけるゲーム処理を行なう他、携帯端末4全体の制御を司るものである。CPU32は、主に、ウェブサーバ装置2,3で実行されるゲーム処理の結果に応じたゲーム画面を表示する表示処理を行う。
無線通信部33は、ネットワーク1を介したサーバなどの外部装置との通信の制御を司る。また、無線通信部33は、無線LAN、Bluetooth(登録商標)、WiFiなどの無線通信機能を有する。
メモリ34は、クライアント側のゲーム処理に関するアプリケーションプログラム37-3を実行する際に必要とされるワークエリアなどとして使用される。
GPSモジュール35は、GPS(Global Positioning System)を利用して位置情報(緯度、経度)、時刻情報などを生成する。
カメラ36は、静止画あるいは動画像を撮像する機能を有する。
記憶装置37は、本実施の形態に係るオンラインゲームに必要とされる各種プログラムやデータを格納するためのものであり、例えば、フラッシュメモリなどにより実現される。記憶装置37には、OS37-1、ゲームプログラム37-2、及びC1,C2,C3用プログラム37-3が格納される。
OS37-1は、携帯端末4の基本的な機能を実現するためのプログラムである。
ゲームプログラム37-2は、本発明の実施の形態に係るオンラインゲームにおけるクライアント側のゲーム処理を実現するためのプログラムである。なお、本実施の形態のオンラインゲームにおけるゲーム処理は、主にサーバ側(ウェブサーバ装置2,3)において行なわれる。このため、クライアント側のゲーム処理では、主に、サーバ側で実行されるゲーム処理の結果に応じたゲーム画面の表示処理、ゲーム画面に応じたユーザによる入力操作に応じたイベント情報の送信処理などを行う。なお、クライアント側で行なわれるゲーム処理の一部又は全てをクライアント側で行なってもよい。
C1,C2,C3用プログラム37-3は、図2に示すアプリケーション実行環境C1、A社データベース接続キットC2、フレームワークC3を実現するためのプログラムである。
タッチパネルセンサ38は、表示部40の表示面に装着されたタッチパネルへのタッチ操作を検出するセンサである。
表示制御コントローラ39は、表示部40の表示制御を行なう。
表示部40は、例えばLCD(Liquid Crystal Display)等により構成され、表示制御コントローラ39の制御によりゲーム画面などを表示する。
次に、本発明の実施の形態に係るオンラインゲームシステムの動作について説明する。
図5は、ウェブサーバ装置2,3、携帯端末4,5の間で送受信される、オンラインゲーム実行時のイベント情報の内容を例示する図である。
図5に示すように、1つのイベント情報は、携帯端末4,5においてオンラインゲームを実行することにより発生するイベントの内容を表す情報であり、時刻情報P1、位置情報P2、及びアクション情報P3を含んでいる。時刻情報P1は、ゲーム中にユーザが入力操作をした時刻を示す。位置情報P2は、ユーザがゲーム中に入力操作をした時の位置を示すもので、例えば携帯端末4,5のGPSモジュール35により生成される位置情報(緯度、経度)を数値化した情報である。アクション情報P3は、携帯端末4,5が予めインストールしたゲームプログラムに基づき、ユーザの入力操作等に応じて発生するイベントに関わるアクションの内容を示す。
図6は、本実施の形態におけるオンラインゲームを同期するためのイベント情報の処理経路の一例を示す図である(後に具体的な処理経路について説明する)。図6では、携帯端末4がウェブサーバ装置2と接続され、携帯端末5がウェブサーバ装置3と接続され、さらにウェブサーバ装置2とウェブサーバ装置3とが接続されている。すなわち、ウェブサーバ装置2,3と携帯端末4,5は、ソケット通信によりデータ(イベント情報)を送受信することができる状態にあるものとする。
なお、本実施の形態におけるオンラインゲームは、ゲームに参加するプレイヤが、それぞれが使用する携帯端末を操作することにより、ゲーム空間内において、プレイヤに対応するキャラクタを移動させることができる。ゲーム空間内には、多数の敵キャラクタが配置されている。プレイヤのキャラクタは、ゲーム空間内で移動(クエストを進行)され、敵キャラクタに遭遇すると、敵キャラクタを攻撃することができる。プレイヤのキャラクタは、敵キャラクタを攻撃し、討伐できると、例えばゲーム中で使用されるアイテムなどを獲得することができる。また、敵キャラクタへの攻撃は、複数のプレイヤが共同して実行することができる。
図6では、携帯端末4と携帯端末5とがオンラインゲームに参加する場合に、携帯端末4,5のそれぞれにおいて実行されるゲーム処理を同期させるために、携帯端末4のゲーム処理で発生したイベントの内容を示すイベント情報を携帯端末に送信する。
例えば、携帯端末4は、ユーザの操作により制御されるゲーム内のキャラクタの体力を示すヒットポイント(HP)が「+10」されるようなイベントが発生した場合、このイベントについての処理を実行すると共に、このイベントを示すイベント情報A1をウェブサーバ装置2に送信する。ウェブサーバ装置2は、携帯端末4から受信したイベント情報A2をウェブサーバ装置3に送信する。ウェブサーバ装置3は、携帯端末4と同じオンラインゲームに参加する携帯端末5に対して、ウェブサーバ装置2により中継されたイベント情報A3をプッシュ動作により送信する。携帯端末5は、携帯端末4において発生したイベントの内容を示すイベント情報をもとに、ゲーム内での携帯端末4のユーザの操作により制御されるキャラクタの体力を「+10HP」にする。
次に、本実施の形態におけるオンラインゲームを同期するためのイベント情報の処理経路の具体例について説明する。図7は、図4に示すイベント情報の具体的な処理経路の一例を示す図である。
携帯端末4は、ユーザの操作により制御されるゲーム内のキャラクタの体力を示すヒットポイント(HP)が「+10」されるようなイベントが発生した場合、このイベントについての処理を実行すると共に、このイベントの内容を示すイベント情報をウェブサーバ装置2に送信する(A11)。イベント情報には、ヒットポイント(HP)を「+10」するアクション情報、イベントが発生した時刻を示す時刻情報、及びイベントが発生した時の携帯端末4の位置を示す位置情報が含まれている。
ウェブサーバ装置2は、携帯端末4からのイベント情報を、プッシュ動作(A12)によりキュー値記憶部2Bに記憶させた上で、同イベント情報をウェブサーバ装置3に送信する(A13)。
ウェブサーバ装置3は、ウェブサーバ装置2からイベント情報を受信すると、同じオンラインゲームに参加しているゲーム相手の携帯端末5に対して、プッシュ動作により同イベント情報を送信する(A14)。携帯端末5は、ウェブサーバ装置3から受信したイベント情報の内容に基づいて、オンラインゲーム内での携帯端末4側のキャラクタの体力を「+10HP」するようゲーム処理を実行する(A15)。また、携帯端末5は、ウェブサーバ装置3から受信したイベント情報をゲーム処理に反映させたことを応答するために、イベント情報をウェブサーバ装置3へ返送する(A16)。
ウェブサーバ装置3は、携帯端末5からイベント情報が返送されると、イベント情報が携帯端末5におけるゲーム処理に反映されたものとして判別する。ウェブサーバ装置3は、ウェブサーバ装置2のキュー値記憶部2Bに対して、ポップ動作によりイベント情報を返送する(A17)。
こうして、本実施の形態におけるオンラインゲームシステムは、携帯端末4においてイベントが発生した場合、携帯端末4から携帯端末5にイベントの内容を示すイベント情報を送信することにより、サーバによる一元的な情報管理を行なうことなく、携帯端末4,5において実行されるオンラインゲームを同期させることができる。
次に、オンラインゲームに参加している携帯端末が一時的にオフライン状態となった場合のオンラインゲームの同期方法について説明する。
図8は、オフラインが生じた場合のオンラインゲームの同期の概念を示す図である。ここでは、携帯端末Aと携帯端末Bとがオンラインゲームを実行している途中で、携帯端末Aがイベント3からオフライン状態となった例を示している。なお、図8に示す携帯端末Aは、例えば図7に示す携帯端末4に対応し、携帯端末Bは、例えば図7に示す携帯端末5に対応するものとする。
この場合、携帯端末Aは、オフライン状態となっても、予めインストールされているゲームプログラムによって、ゲーム処理を続行する。しかし、携帯端末Aは、イベント3以降のイベントに関して、携帯端末Bとの間でイベント情報を送受信することができない(処理結果はNGと判定される)。
携帯端末Bは、イベント2の以後、携帯端末Aからの応答がないため、イベント2に対する処理の実行後にロールバック状態となる。すなわち、携帯端末Bは、ゲーム上の進展がない状態を維持する。
ここで、ロールバックを行なうものとしては、例えばゲーム上での課金処理等がある。また、ロールバックを行なわないものとしては、例えばキャラクタの対戦の結果や、ゲーム空間内でのキャラクタの進行等がある。ゲーム進行上、重要となるイベント情報に関しては、特定の閾値を設けることでイベント情報を判断してロールバックを行なうものとしても良い。
したがって、携帯端末Aが再びオンライン状態に復帰した後、各携帯端末に記憶されているイベント情報に基づき、携帯端末A,B共にイベント2までが有効であり、携帯端末Aのイベント3以降のイベントに関して、ゲーム進行上、齟齬が生じるか否かをウェブサーバ装置が仲介して検証し、その検証結果を各携帯端末A,Bに反映させることで、携帯端末Aと携帯端末Bとの正しい同期状態が維持できる。
図8において、イベント3を成立させると携帯端末Bとの間で同期がとれないと判断した場合には、図示するように携帯端末Aのイベント3を無効とする。一方で、イベント3を成立させても、携帯端末Bとの間で何ら齟齬が生じず、同期がとれると判断した場合には、イベント3の成立を許可する。
上記ウェブサーバ装置が検証を行なう際の判断基準となるのが、端末からオンライン復帰時にバッチ処理により纏めて送られてくるイベント情報と、ウェブサーバ内のキュー値記憶部2Bに蓄積して記憶されているイベント情報であり、これら両イベント情報中の上記時刻情報P1と位置情報P2とを参照することで、必要により予め特定した閾値を用いた判定を行なうことで、オフラインとなる前のオンライン状態での有効なイベント情報を正確に検証できる。
また、上述した如くオフライン状態で実行したイベント情報が、オンライン後に相互の同期を乱すものではないと判断した場合には、そのイベント情報の実行を有効として許可する。
図9は、携帯端末4がオフライン状態からオンライン状態に復帰した後のイベント情報の処理経路を示す図である。ここでは、携帯端末4がオフライン状態にある時に発生したイベントを有効と判断した場合の例を示している。
携帯端末4は、オフライン状態においてゲーム処理を実行している間、ゲーム処理で発生したイベントのイベント情報を記憶しておく。携帯端末4は、オフライン状態からオンライン状態に復帰した場合に、記憶していたイベント情報をウェブサーバ装置2に送信する。
例えば、ユーザの操作するゲーム内のキャラクタの体力を示すヒットポイント(HP)が「+10」されるようなイベント情報(A21)が携帯端末4からバッチ処理によりウェブサーバ装置2へ送信されたものとする。なお、携帯端末4がオンライン状態となった場合、携帯端末4,5とウェブサーバ装置2,3とは、ウェブソケット(ソケット通信)によりイベント情報を含むデータの送受信が可能な状態となる。
ウェブサーバ装置2は、携帯端末4からのイベント情報(A21)を、プッシュ動作(A22)によりキュー値記憶部2Bに記憶させた上で、同イベント情報をウェブサーバ装置3に送信する(A23)。
この時点で、携帯端末4とオンライン状態となった携帯端末5は、ウェブサーバ装置3に対してプッシュ動作により同イベント情報を送信する(A24)。これを受けたウェブサーバ装置3は、ウェブサーバ装置2のキュー値記憶部2Bをアクセスして(A25)、キュー値記憶部2Bに記憶されている同イベント情報(A26)を読出した上で、携帯端末5に同イベント情報を送信する(A27)。
携帯端末5は、ウェブサーバ装置3から受信したイベント情報の内容に基づいて、オンラインゲーム内での携帯端末4側のキャラクタの体力を「+10HP」するようゲーム処理を実行する(A28)。また、携帯端末5は、ウェブサーバ装置3から受信したイベント情報をゲーム処理に反映させたことを応答するために、イベント情報をウェブサーバ装置3に返送する(A29)。
ウェブサーバ装置3は、携帯端末5からイベント情報が返送されると、イベント情報が携帯端末5におけるゲーム処理に反映されたものとして判別する。ウェブサーバ装置3は、ウェブサーバ装置2のキュー値記憶部2Bに対して、ポップ動作によりイベント情報を返送する(A30)。以上で、一方の携帯端末4でオフライン時にイベント情報が発生した場合の、オンライン復帰後の一連の処理を終了する。
このように、オフライン状態で発生したイベント情報に関しても、双方の携帯端末4,5でのゲーム進行上で齟齬を来さない程度の内容、例えばキャラクタがゲーム空間内を移動するなど、ゲームの進行に関してオフライン状態で許可されるイベント情報の定義を予め行なっておくことで、オフライン状態が生じた場合でもユーザに対してより違和感のないゲーム環境が提供できる。
なお、具体的なイベント情報としては、ゲーム上でのクエストのクリア、他のキャラクタとの対戦、アイテムの入手とそれに伴う課金処理、等が考えられる。
次に、本実施の形態におけるオンラインゲームを同期するための別の処理の具体例について説明する。
図10は、本実施の形態におけるオンラインゲームを同期するための具体的なイベント情報の処理経路の一例を示す図である。図11A及び図11Bは、ゲームの進行に伴って携帯端末Aから携帯端末Bに送信されるイベント情報の具体例を示す図、図12は、図11A及び図11Bに示すイベント情報の具体的な内容を示す図である。図11A及び図11Bでは、左から右の方向に時間が経過していることを表している。
図11A及び図11Bに示す携帯端末Aは、例えば図10に示す携帯端末4に対応し、携帯端末Bは、例えば図10に示す携帯端末5に対応するものとする。すなわち、図11A及び図11Bは、携帯端末4において発生したイベントのイベント情報を、携帯端末4から携帯端末5に送信する例を示す。なお、携帯端末5においてイベントが発生した場合には、携帯端末4においてイベントが発生した場合と同様にして、携帯端末5から携帯端末4にイベント情報を送信する。さらに、図10では、2つの携帯端末4,5のみを図示しているが、多数(3人以上)のプレイヤがオンラインゲームに参加する場合には、それぞれのプレイヤが使用する携帯端末の間でイベント情報の送受信が行われる。すなわち、1つの携帯端末において発生したイベントのイベント情報は、複数の携帯端末に送信する必要がある。従って、オンラインゲームに参加するプレイヤの数が増えるほど、イベント情報を送受信するためのトラフィックが大幅に増大する。
本実施の形態におけるオンラインゲームシステムでは、ウェブサーバ装置は、オンラインゲームの同期を図るためにイベント情報を携帯端末から受信すると、このイベント情報が他の携帯端末において実行されるゲーム処理(ゲーム状況)に関わるか否かを判別する。ウェブサーバ装置は、他の携帯端末において実行されるゲーム処理(ゲーム状況)に関わると判別した場合、イベント情報をキュー記憶部に記憶すると共にオンラインゲームの同期を図るためにイベント情報を他の携帯端末に送信する。
図10に示すウェブサーバ装置2,3は、ウェブソケットを介してデータ通信が可能な状態にあるものとする。携帯端末4は、オンラインゲームに参加するために、ハンドシェイクを経て、ウェブサーバ装置2と接続する。これにより、携帯端末4は、ウェブサーバ装置2,3を含むウェブサーバ装置群(各ウェブサーバ装置と接続された携帯端末を含む)とウェブソケットを介してデータ通信が可能な状態になる。
オンラインゲームのゲーム空間には、携帯端末4に対応するプレイヤキャラクタが生成される。プレイヤキャラクタは、携帯端末4に対するプレイヤの操作に応じて、ゲーム空間中で各種の動作が可能となる。例えば、携帯端末4は、プレイヤキャラクタをゲーム空間中で移動させる操作、すなわちクエストを進行させる操作がされたものとする(図11AのTA1)。携帯端末4のCPU32は、入力操作に応じてゲーム処理を実行すると共に、このイベント1のイベント情報を生成する。イベント1のイベント情報は、図12に示すように、イベントの内容を示すアクション情報として「プレイヤAがクエストを進行」、時刻情報として「9時00分」、位置情報として「緯度35.681382、経度139.766084」が含まれる。時刻情報は、入力操作がされた時の携帯端末4が管理する時刻を示す。また、位置情報は、GPSモジュール35によって取得された緯度、経度をもとに生成される。なお、時刻情報は、携帯端末4が管理する時刻ではなく、ウェブサーバ装置2が管理する時刻を利用しても良い。この場合、携帯端末4からウェブサーバ装置2に送信するイベント情報は、時刻情報を含まず、ウェブサーバ装置2において時刻情報が付加されるものとする。
携帯端末4は、Send動作(B1:Send)により、ウェブソケットを介して、イベント情報をウェブサーバ装置2に送信する。ウェブサーバ装置2の判別部2Aは、イベント情報に含まれる位置情報をもとに、イベント情報が正当であるか否かを判別する。すなわち、判別部2Aは、先に受信されたイベント情報の位置情報と、後に受信されたイベント情報の位置情報とを比較し、携帯端末4の移動距離を判別する。判別部2Aは、位置情報をもとに判別される携帯端末4の移動距離が、物理的に移動可能な距離であるかを判別する。例えば、判別部2Aは、先に受信されたイベント情報の時刻情報と、後に受信されたイベント情報の時刻情報とをもとに、先のイベント情報を受信した時刻から後のイベント情報を受信した時刻までの時間を求める。例えば、判別部2Aは、時間に対する移動可能な距離を判別する基準値が設定されており、この設定値以上の移動距離であった場合には、携帯端末4から受信したイベント情報が正当でないものと判別する。例えば、携帯端末4を使用するプレイヤになりすまして、携帯端末4から離れた場所にある他の携帯端末からオンラインゲームに参加している場合、判別部2Aは、他の携帯端末からのイベント情報が正当ではないと判別することができる。この場合、判別部2Aは、携帯端末4から受信したイベント情報を無効化して、ゲーム処理を中断する。なお、以下の説明では、ウェブサーバ装置2,3は、携帯端末4,5から正当なイベント情報を受信するものとして説明する。
一方、イベント情報が正当と判別された場合、ウェブサーバ装置2は、携帯端末4から受信したイベント情報に応じたゲーム処理を実行する。ここで、携帯端末4が参加しているオンラインゲームに他のプレイヤが参加していない場合、ウェブサーバ装置2は、携帯端末4から受信したイベント情報を、他の携帯端末(あるいはウェブサーバ装置)に送信する必要がない。
同様にして、プレイヤキャラクタがゲーム空間で敵キャラクタ(ボスキャラクタ)に遭遇したイベントが発生すると(図11AのTA2)、携帯端末4は、このイベント2のイベント情報を生成して、ウェブサーバ装置2に送信する(B1:Send)。イベント2のイベント情報の詳細は、図12に示す。
一方、携帯端末5は、オンラインゲームに参加するために、ハンドシェイクを経て、ウェブサーバ装置3と接続する。これにより、携帯端末5は、ウェブサーバ装置2,3を含むウェブサーバ装置群(各ウェブサーバ装置と接続された携帯端末を含む)とウェブソケットを介してデータ通信が可能な状態になる。
携帯端末4のプレイヤは、敵キャラクタ(ボスキャラクタ)への攻撃を他のプレイヤと共同して実行するために、フレンド要請を指示したものとする(図11AのTAB3)。携帯端末4は、このイベント3のイベント情報を生成して、ウェブサーバ装置2に送信する(B1:Send)。イベント3のイベント情報は、図12に示すように、フレンド要請のイベントの内容を示すアクション情報として「プレイヤAがプレイヤBを招待する」を示すデータが含まれている。
ウェブサーバ装置2の判別部2Aは、携帯端末4からイベント3のイベント情報を受信すると、このイベント情報を携帯端末5に送信するか否かを、イベント情報の内容に基づいて判別する。例えば、判別部2Aは、イベント情報を携帯端末5に送信するか否かを、携帯端末4と同じオンラインゲームに参加している携帯端末5のゲーム状況に関わるイベントであるか否かに基づいて判別する。判別部2Aには、例えば他の携帯端末のゲーム状況に関わるイベントを判別するための判別テーブルが設けられている。判別テーブルには、ゲーム状況に関わるイベントを判別する条件が定義されている。判別部2Aは、携帯端末4から受信したイベント情報のアクション情報が、判別テーブルに定義された条件に該当する場合に、イベント情報がゲーム状況に関わるイベントを判別することができる。
判別部2Aは、イベント情報に含まれるアクション情報が「プレイヤAがプレイヤBを招待する」であるため、プレイヤBが使用する携帯端末5のゲーム状況に関わるイベントであると判別する。すなわち、判別部2Aは、イベント3のイベント情報を、携帯端末5に送信すると判別する。この場合、判別部2Aは、携帯端末4から受信したイベント情報をキュー記憶部2Bに記憶させる。
また、判別部2Aは、キュー記憶部2Bに記憶させたイベント情報をプッシュ動作(B2:Push)により、ウェブソケットを介して、携帯端末5と接続されたウェブサーバ装置3に送信する(B31:Publish)。
ウェブサーバ装置3は、ウェブサーバ装置2からイベント情報を受信すると、同じオンラインゲームに参加しているゲーム相手の携帯端末5に対して、ウェブソケットを介して、プッシュ動作によりイベント情報を送信する(B41:Push)。携帯端末5は、ウェブサーバ装置3から受信したイベント情報の内容に基づいてゲーム処理を実行して、携帯端末4において発生したイベントを反映させる(B5:実行)。また、携帯端末5は、ウェブサーバ装置3から受信したイベント情報をゲーム処理に反映させたことを通知するために、完了通知をウェブサーバ装置3へ送信する(B6:完了通知)。
ウェブサーバ装置3は、携帯端末5からの完了通知に応じて、ポップ動作によりウェブサーバ装置2に通知する(B7:Pop)。ウェブサーバ装置2の判別部2Aは、ポップ動作による通知に応じて、キュー値記憶部2Bに記憶された、携帯端末5に送信したイベント情報を削除する。
携帯端末5は、携帯端末4からフレンド要請するイベント情報を受信することにより、プレイヤBに対して、プレイヤAからフレンド要請されたことを通知する。プレイヤBは、フレンド要請に応答することにより、プレイヤAと共に敵キャラクタ(ボスキャラクタ)への攻撃に参加することができる。携帯端末5は、プレイヤBの入力操作によって、敵キャラクタ(ボスキャラクタ)への攻撃が指示されると、携帯端末4と同様に攻撃のイベントを発生して、攻撃のイベント情報をウェブサーバ装置3に送信する。すなわち、携帯端末5において発生したイベントの位置情報は、ウェブソケットを介して、携帯端末4に送信される。
携帯端末4は、プレイヤAの入力操作に応じて攻撃のイベントを発生して(図11AのTAB4)、前述と同様にして、イベント情報をウェブサーバ装置2に送信する(B1:Send)。ウェブサーバ装置2の判別部2Aは、携帯端末4からイベント4のイベント情報を受信すると、携帯端末5のゲーム状況に関わるイベントであるか否かを判別する。
ここで、判別部2Aは、判別テーブルに定義された条件をもとに、敵キャラクタに対する攻撃のイベントが、携帯端末5のゲーム状況に関わるイベントでないと判別する。この場合、判別部2Aは、携帯端末4から受信したイベント情報をキュー記憶部2Bに記憶させず、イベント情報をウェブサーバ装置3へ送信する。
ウェブサーバ装置3は、ウェブサーバ装置2からイベント情報を受信すると、同じオンラインゲームに参加しているゲーム相手の携帯端末5に対して、ウェブソケットを介して、プッシュ動作によりイベント情報を送信する(B42:Push)。携帯端末5は、ウェブサーバ装置3から受信したイベント情報の内容に基づいてゲーム処理を実行して、携帯端末4において発生したイベントを反映させる(B5:実行)。
こうして、携帯端末4から受信したイベント情報をウェブサーバ装置3へ送信することにより、携帯端末4,5において実行されるオンラインゲームのゲーム処理を確実に同期させることができる。
また、携帯端末5へ送信しないと判別したイベント情報をキュー記憶部2Bに記憶させないことにより、キュー記憶部2Bの記憶容量の消費を減らすことができる。
また、携帯端末4から受信したイベント情報が携帯端末5のゲーム状況に関わるイベントであると判別された場合には、このイベント情報をキュー記憶部2Bに記憶させておくことで、携帯端末5がオフライン状態となった場合であってもゲーム処理を確実に同期させることができる。携帯端末5がオフライン状態となった場合の動作については後述する(図13、図14参照)。
同様にして、携帯端末4において発生したイベント5のイベント情報は、アクション情報として「ボスがプレイヤAを攻撃」のデータが含まれており、ウェブサーバ装置2の判別部2Aにより携帯端末5のゲーム状況に関わるイベントでないと判別される(図11BのTAB5)。イベント5のイベント情報は、イベント4のイベント情報と同様にして、携帯端末4から受信したイベント情報をキュー記憶部2Bに記憶されず、ウェブサーバ装置3へ送信される。
次に、携帯端末4において発生したイベント6のイベント情報は、アクション情報として「プレイヤA,Bがボス討伐」のデータが含まれている。携帯端末4,5を操作しているプレイヤA,Bは、それぞれが入力操作をすることにより敵キャラクタ(ボスキャラクタ)に対して攻撃を加えている。この結果、何れかのプレイヤの入力操作により与えられた攻撃によりボスキャラクタを討伐することができる。この場合、「ボスが討伐された」ことは、それぞれのプレイヤA,Bのゲーム状況に関わることになる。
従って、ウェブサーバ装置2の判別部2Aは、イベント6のイベント情報について、携帯端末5のゲーム状況に関わるイベントであると判別する(図11BのTAB6)。イベント6のイベント情報は、キュー記憶部2Bに記憶されると共に、ウェブサーバ装置3を介して携帯端末5に送信される。
同様にして、携帯端末4において発生したイベント7のイベント情報は、アクション情報として「アイテムをプレイヤA,Bに付与」のデータが含まれており、ウェブサーバ装置2の判別部2Aにより携帯端末5のゲーム状況に関わるイベントであると判別される(図11BのTAB7)。イベント7のイベント情報は、イベント6のイベント情報と同様にして、キュー記憶部2Bに記憶されると共に、携帯端末5へ送信される。
このようにして、ウェブサーバ装置2は、携帯端末4から受信したイベント情報について、携帯端末5に送信するか否かをイベント情報の内容、すなわち携帯端末5において実行されるゲーム状況に関わる内容であるか否かに判別することができる。ウェブサーバ装置2は、携帯端末5のゲーム状況に関わるイベント情報をキュー記憶部2Bに記憶させると共に携帯端末5に送信し、携帯端末5のゲーム状況に関わらないイベント情報をキュー記憶部2Bに記憶させないで携帯端末5に送信する。すなわち、携帯端末4において発生したイベントのイベント情報を携帯端末5に送信することにより、オンラインゲームの同期を図ることが可能である。
なお、前述した説明では、携帯端末4から受信したイベント情報が、携帯端末5のゲーム状況に関わる場合と関わらない場合の何れであっても、イベント情報を携帯端末5に送信するとしている。本実施形態では、ウェブサーバ装置2の判別部2Aが、携帯端末4からのイベント情報が携帯端末5のゲーム状況に関わらないと判別された場合に、このイベント情報を携帯端末5に送信しないようにしても良い。
これにより、図10に中の破線によって示す、ウェブサーバ装置2からウェブサーバ装置3へのイベント情報の送信(B32:Publish)、ウェブサーバ装置3から携帯端末5へのイベント情報の送信(B42:Push)が省略される。これにより、イベント情報を送信するためのトラフィックを削減することができる。
前述した説明では、携帯端末4から携帯端末5にイベント情報を送信する場合を対象としているが、同様にして、携帯端末5から携帯端末4に対してイベント情報を送信する。従って、携帯端末5から携帯端末4にイベント情報を送信するためのトラフィック量も削減される。さらに、より多くのプレイヤが同じオンラインゲームに参加している場合には、大幅なトラフィック量の削減を期待することができる。
次に、オンラインゲームに参加している携帯端末5が一時的にオフライン状態となった場合のオンラインゲームの同期方法について説明する。
図13は、携帯端末5が一時的にオフライン状態となった状況のイベント情報の処理経路の一例を示す図、図14は、携帯端末5がオンライン状態に復帰した状況のイベント情報の処理経路の一例を示す図、図15A及び図15Bは、ゲームの進行に伴って携帯端末Aから携帯端末Bに送信されるイベント情報の具体例を示す図である。
なお、図15Aに示すイベント1,2,3についての処理は、図11Aに示すイベント1,2,3と同様にして実行されるものとして説明を省略する。すなわち、イベント3のイベント情報は、ウェブサーバ装置2,3と携帯端末4,5とがウェブソケットを介してデータの送受信が可能な状態において、携帯端末4から携帯端末5に送信される。
ここで、携帯端末4においてイベント4が発生したものとする(図15AのTAB4)。携帯端末4は、イベント4のイベント情報をウェブサーバ装置2に送信する(C1:Send)。ウェブサーバ装置2の判別部2Aは、イベント4のイベント情報の内容が携帯端末5のゲーム状況に関わらないと判別する。従って、イベント4のイベント情報は、キュー記憶部2Bに記憶されず、ウェブサーバ装置2からウェブサーバ装置3へ送信(C32:Publish)される。しかし、携帯端末5がオフライン状態となっているため、ウェブサーバ装置3から携帯端末5への送信(C42:Publish)は失敗する。
次に、携帯端末4においてイベント5が発生したものとする(図15BのTAB5)。携帯端末4は、イベント4のイベント情報をウェブサーバ装置2に送信する(C1:Send)。ウェブサーバ装置2の判別部2Aは、イベント5のイベント情報の内容が携帯端末5のゲーム状況に関わらないと判別する。従って、イベント4のイベント情報は、イベント4のイベント情報と同様にして、キュー記憶部2Bに記憶されない。ウェブサーバ装置3に送信される。この間、携帯端末5がオンライン状態に復帰した場合、ウェブサーバ装置3から携帯端末5への送信(C41:Publish)は成功する。
携帯端末5がオンライン状態に復帰すると、携帯端末5は、携帯端末4とウェブソケットを介してデータ送受信が可能な状態となる。従って、携帯端末4において発生したイベント6,7のイベント情報は(図15BのTAB6、TAB7)、キュー記憶部2Bに記憶されると共に携帯端末5に送信される。図16は、携帯端末4において発生するイベント4以降の携帯端末4から携帯端末5に送信されるイベント情報の一例を示す図である。携帯端末4は、イベント4,5のイベント情報をウェブサーバ装置2に送信する。しかし、図16において破線によって示すイベント4,5のイベント情報は、携帯端末5のゲーム状況に関わらないと判別される。従って、ウェブサーバ装置2のキュー記憶部2Bには、イベント4,5のイベント情報が記憶されず、イベント7,8のイベント情報のみが記憶される。
なお、判別部2Aによって携帯端末5のゲーム状況に関わらないと判別されたイベント情報を携帯端末5に送信しない場合には、ウェブサーバ装置2からウェブサーバ装置3へ送信(C32:Publish)と、ウェブサーバ装置3から携帯端末5への送信(C42:Publish)が省略される。このため、携帯端末5がオフライン状態にあっても影響を受けない。
ここで、例えばイベント4のイベント情報が携帯端末5のゲーム状況に関わると判別された場合について説明する。
ここでは、携帯端末5とウェブサーバ装置3との通信が切断され、携帯端末5は、図13に示すように、オフライン状態になっているものとする。この場合、携帯端末5は、ウェブソケットを通じてデータを送受信することができない。従って、ウェブサーバ装置3から携帯端末5に対するイベント情報の送信(C41:Publish)は、エラーとなる。
この場合、ウェブサーバ装置2の判別部2Aは、ウェブサーバ装置3にイベント情報を送信した後、例えば予め決められた時間内にポップ動作により通知がない場合には、携帯端末5への位置情報の送信に失敗したと判別する。この場合、判別部2Aは、ウェブサーバ装置3に記憶したイベント4のイベント情報に対して、イベント情報の送信が失敗したことを示す情報を付加しておく。
次に、携帯端末5は、ウェブサーバ装置3との接続を再開して、オンライン状態に復帰したものとする。この場合、携帯端末5は、図14に示すように、ウェブサーバ装置3に対して、同じオンラインゲームに参加している携帯端末4からのイベント情報の送信要求を出力する(D1:Request)。
ウェブサーバ装置3は、ウェブサーバ装置3から復帰時に送信される、イベント情報の送信要求に応じて、ウェブサーバ装置2のキュー記憶部2Bに記憶されたイベント情報の読み出しを、ウェブサーバ装置2(判別部2A)に要求する(D2:Read)。
ウェブサーバ装置2の判別部2Aは、ウェブサーバ装置3からのイベント情報の読み出し要求に対して、イベント情報の送信が失敗したことを示す情報が付加されたイベント情報をウェブサーバ装置3に返送する(D3:Reply)。ウェブサーバ装置3は、ウェブサーバ装置2から返送されたイベント情報を、プッシュ動作により携帯端末5に送信する(D4:Push)。
携帯端末5は、ウェブサーバ装置3から受信したイベント情報の内容に基づいてゲーム処理を実行して、携帯端末4において発生したイベントを反映させる(D5:実行)。また、携帯端末5は、ウェブサーバ装置3から受信したイベント情報をゲーム処理に反映させたことを通知するために、完了通知をウェブサーバ装置3へ送信する(D6:完了通知)。
ウェブサーバ装置3は、携帯端末5からの完了通知に応じて、ポップ動作によりウェブサーバ装置2に通知する(D7:Pop)。ウェブサーバ装置2の判別部2Aは、ポップ動作による通知に応じて、キュー値記憶部2Bに記憶された、携帯端末5がオフライン状態にある時に送信したイベント情報を削除する。
このようにして、携帯端末5が一時的にオフライン状態となったとしても、携帯端末5が復帰した後に、ウェブサーバ装置2のキュー記憶部2Bに記憶されたイベント情報が携帯端末5に送信されて、携帯端末5のゲーム処理に反映される。これにより、携帯端末4,5において実行されるオンラインゲームのゲーム処理を同期させることが可能となる。
なお、図10、図13及び図14では、2つのウェブサーバ装置2,3を介して、携帯端末4からのイベント情報を携帯端末5に送信しているが、3つ以上のウェブサーバ装置を介して、携帯端末4からのイベント情報を携帯端末5に送信する構成とすることもできる。この場合、携帯端末4と接続されるウェブサーバ装置2とは異なる他のウェブサーバ装置が、前述した処理(判別部2Aにより実行される処理を含む)を実行するようにしても良い。
図17A,17B及び図18A,18Bは、対戦ゲームにおけるイベント情報の発生を例示する図である。これらの図は、ユーザが操作可能な複数のキャラクタをゲーム上で移動させ、必要により他のキャラクタと対戦させてキャラクタを育成するゲームを例示している。
図17Aでは、画面上部に先頭で使用するキャラクタとゲーム上での(予め設定されている経路上での)進行度合い(PROGRESS)、及びその時点での得点(SCORE)を示している。また、画面下部では、残るキャラクタを5体保持であり、そのうち1体のみ保持している状態を示す。そして、画面中央の大部分では、ゲーム上で「森の中」を進行している状態を示している。
図17Bは、上記図17Aの状態からさらに進行の度合いが増した状態を示している。この場合、オフライン時にゲーム空間内での進行度合いが増したとしても、得点自体は変化していないため、そのようなイベント情報に関しては、後のオンライン状態への復帰時に、有効であるものとして、上記図7に示した如くオンラインゲームの相手に対しても当該イベント情報を有効とする処理を実行してもよい。
図18Aは、上記図17Bの状態からさらにゲーム空間内での進行の度合いが増した状態を示している。この場合も、オフライン時に進行度合いが増したとしても、得点自体は変化していないため、そのようなイベント情報に関しては、後のオンライン状態への復帰時に、有効であるものとして、上記図9に示した如くオンラインゲームの相手に対しても当該イベント情報を有効とする処理を実行してもよい。
図18Bは、上記図18Aの状態からさらに進行の度合いが増し、現出した他のキャラクタとの対戦を行なう状態を示している。この場合、ゲーム進行上はオフライン状態でも戦闘を行なうことは可能となるが、戦闘の結果により、得点が大きく変化し、オンライン状態で対戦していた他の端末側との整合がとれなくなる可能性が高い。
そのため、このようなイベント情報に関しては、後のオンライン状態への復帰時に、無効であるものとして、元のオンライン状態にまで差し戻されるよう、上記図8で説明したようにウェブサーバ装置2,3での検証処理によりコントロールされることになる。
以上詳述した如く本実施形態によれば、オンラインゲームを統括して制御する際に、データベースを用いるような大がかりなサーバ装置による一元的な情報管理を行なう必要がなく、オンライン通信時の各機の処理負担を軽減すると共に、オフライン環境での処理を継続することが可能となる。
また、上記実施形態では、検証の基準としてイベント情報中の時刻情報P1のみならず、位置情報P2も参照して検証を実行するものとしたので、オフライン状態の前後で端末の存在する位置が不自然に大きく移動しているような、不正な操作がなされている可能性が高い状態を検知して、確実にゲームをコントロールできる。
さらに、上記実施形態では、検証の結果、無効であると認定したイベントに関しては、その旨を示す認識情報を返信することで、確実に同期のとれたゲームの進行が維持できる。
さらに、オンラインゲームに参加する複数の携帯端末の間で送受信されるイベント情報について、ウェブサーバ装置2,3において他の携帯端末に送信するか否かを判別し、送信すると判別されたイベント情報のみを送信することで、ウェブソケットを介したデータのトラフィックを削減することが可能となる。
なお、上記実施形態は、スマートフォンなどの2台の携帯端末を用いてオンラインゲームを行なう場合について説明したが、本発明は端末の台数を限ることなく、またゲームの内容に関しても上記図17A,17B及び図18A,18Bに示したような戦闘ゲームに限るものではない。
また上記実施形態では、ウェブソケットの規格を使用する一例について説明を行なったが、本発明はこれに限らず、ウェブサーバとブラウザの間の通信に関する他の規格であっても良い。
その他、本発明は上述した実施形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。また、上述した実施形態で実行される機能は可能な限り適宜組み合わせて実施しても良い。上述した実施形態には種々の段階が含まれており、開示される複数の構成要件による適宜の組み合せにより種々の発明が抽出され得る。例えば、実施形態に示される全構成要件からいくつかの構成要件が削除されても、効果が得られるのであれば、この構成要件が削除された構成が発明として抽出され得る。以下に、本願の原出願の特許請求の範囲に記載された発明を付記する。
〔1〕ゲーム処理に関わる情報を、サーバを介して第1クライアント端末と第2クライアント端末との間で送受信することが可能なオンラインゲームの同期方法であって、
前記サーバが、
オフライン状態からオンライン状態となった前記第1クライアント端末から、前記オフライン状態の間にゲームを進行させることにより発生したイベントに関わる第1情報を受信する第1ステップと、
前記第1情報に対応するイベントを成立させたとき前記第2クライアント端末との間で同期がとれる場合に、前記第1情報に対応する第2情報を前記第2クライアント端末に送信し、前記第1情報に対応するイベントを成立させたとき前記第2クライアント端末との間で同期がとれない場合に、前記第2情報を前記第2クライアント端末に送信しない第2ステップと、を実行する、オンラインゲームの同期方法。
〔2〕前記サーバが、前記第1情報に対応するイベントの種類に基づき、前記第1情報に対応するイベントを成立させたとき前記第2クライアント端末との間で同期がとれるか否かを判定する第3ステップを実行し、
前記第2ステップでは、前記第3ステップにて、前記第1情報に対応するイベントを成立させたとき前記第2クライアント端末との間で同期がとれると判定した場合に、前記第2情報を前記第2クライアント端末に送信し、前記第3ステップにて、前記第1情報に対応するイベントを成立させたとき前記第2クライアント端末との間で同期がとれないと判定した場合に、前記第2情報を前記第2クライアント端末に送信しない、〔1〕に記載のオンラインゲームの同期方法。
〔3〕前記サーバは、前記第3ステップでは、前記第1情報が前記ゲーム内のパラメータの変化を前記イベントとして含む場合、前記第1情報に対応するイベントを成立させたとき前記第2クライアント端末との間で同期がとれると判定する〔2〕に記載のオンラインゲームの同期方法。
〔4〕前記サーバは、前記第2クライアント端末が前記第2情報を前記ゲームに反映させた場合に、前記第2クライアント端末から反映したことを示す応答を受信する第4ステップを実行する〔1〕又は〔2〕に記載のオンラインゲームの同期方法。
〔5〕サーバ、第1クライアント端末、及び第2クライアント端末を含むオンラインゲームの同期システムであって、
前記第1クライアント端末が、オフライン状態の間にゲームを進行させることにより発生したイベントに関わる第1情報を前記サーバに送信し、
前記サーバが、
オフライン状態からオンライン状態となった前記第1クライアント端末から、前記第1情報を受信し、
前記第1情報に対応するイベントを成立させたとき前記第2クライアント端末との間で同期がとれる場合に、前記第1情報に対応する第2情報を前記第2クライアント端末に送信し、前記第1情報に対応するイベントを成立させたとき前記第2クライアント端末との間で同期がとれない場合に、前記第2情報を前記第2クライアント端末に送信しない、オンラインゲームの同期システム。
〔6〕第1クライアント端末及び第2クライアント端末に接続可能なサーバであって、
オフライン状態からオンライン状態となった前記第1クライアント端末から、前記オフライン状態の間にゲームを進行させることにより発生したイベントに関わる第1情報を受信する第1手段と、
前記第1情報に対応するイベントを成立させたとき前記第2クライアント端末との間で同期がとれる場合に、前記第1情報に対応する第2情報を前記第2クライアント端末に送信し、前記第1情報に対応するイベントを成立させたとき前記第2クライアント端末との間で同期がとれない場合に、前記第2情報を前記第2クライアント端末に送信しない第2手段と、を備える、サーバ。
〔7〕第1クライアント端末及び第2クライアント端末に接続可能なサーバが実行するオンラインゲームの同期プログラムであって、
前記サーバに、
オフライン状態からオンライン状態となった前記第1クライアント端末から、前記オフライン状態の間にゲームを進行させることにより発生したイベントに関わる第1情報を受信する第1ステップと、
前記第1情報に対応するイベントを成立させたとき前記第2クライアント端末との間で同期がとれる場合に、前記第1情報に対応する第2情報を前記第2クライアント端末に送信し、前記第1情報に対応するイベントを成立させたとき前記第2クライアント端末との間で同期がとれない場合に、前記第2情報を前記第2クライアント端末に送信しない第2ステップと、を実行させる、オンラインゲームの同期プログラム。
1…ネットワーク、2,3…ウェブサーバ装置、4,5…携帯端末、6…アクセスポイント(AP)、7…基地局、C1…アプリケーション実行環境、C2…A社データベース接続キット、C3…A社フレームワーク、P1…時刻情報、P2…位置情報、P3…アクション情報、S1…サーバ側ジャバスクリプト実行環境、S2…A社フレームワーク。
本発明は、複数の携帯端末間でオンラインゲームを行なうためのオンラインゲームの同期方法、オンラインゲームの同期システム、サーバ及びオンラインゲームの同期プログラムに関する。

Claims (1)

  1. ゲーム処理に関わる情報を、サーバを介して第1クライアント端末と第2クライアント端末との間で送受信することが可能なオンラインゲームの同期方法であって、
    前記サーバが、
    オフライン状態からオンライン状態となった前記第1クライアント端末から、前記オフライン状態の間にゲームを進行させることにより発生したイベントに関わる第1情報を受信する第1ステップと、
    前記第1情報に対応するイベントを成立させたとき前記第2クライアント端末との間で同期がとれるか否かを判定し、同期がとれると判定した場合に、前記第1情報に対応する第2情報を前記第2クライアント端末に送信し、前記第1情報に対応するイベントを成立させたとき前記第2クライアント端末との間で同期がとれないと判定した場合に、前記第2情報を前記第2クライアント端末に送信しない第2ステップと、を実行する、オンラインゲームの同期方法。
JP2022055247A 2012-10-03 2022-03-30 オンラインゲームの同期方法、オンラインゲームの同期システム、サーバ、及びオンラインゲームの同期プログラム Active JP7234440B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2012221566 2012-10-03
JP2012221566 2012-10-03
JP2020193252A JP7058042B2 (ja) 2012-10-03 2020-11-20 オンラインゲームの同期方法、オンラインゲームの同期システム、サーバ、クライアント端末、及びオンラインゲームの同期プログラム

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2020193252A Division JP7058042B2 (ja) 2012-10-03 2020-11-20 オンラインゲームの同期方法、オンラインゲームの同期システム、サーバ、クライアント端末、及びオンラインゲームの同期プログラム

Publications (2)

Publication Number Publication Date
JP2022087150A true JP2022087150A (ja) 2022-06-09
JP7234440B2 JP7234440B2 (ja) 2023-03-07

Family

ID=50435081

Family Applications (6)

Application Number Title Priority Date Filing Date
JP2014531028A Active JP5827410B2 (ja) 2012-10-03 2013-10-03 オンラインゲームの同期方法及びサーバ装置
JP2015130195A Active JP6092951B2 (ja) 2012-10-03 2015-06-29 オンラインゲームの同期方法及びサーバ装置
JP2017022349A Active JP6462740B2 (ja) 2012-10-03 2017-02-09 オンラインゲームの同期方法及びサーバ装置
JP2018242439A Active JP6837046B2 (ja) 2012-10-03 2018-12-26 オンラインゲームの同期方法、オンラインゲームの同期システム、サーバ、クライアント端末、及びオンラインゲームの同期プログラム
JP2020193252A Active JP7058042B2 (ja) 2012-10-03 2020-11-20 オンラインゲームの同期方法、オンラインゲームの同期システム、サーバ、クライアント端末、及びオンラインゲームの同期プログラム
JP2022055247A Active JP7234440B2 (ja) 2012-10-03 2022-03-30 オンラインゲームの同期方法、オンラインゲームの同期システム、サーバ、及びオンラインゲームの同期プログラム

Family Applications Before (5)

Application Number Title Priority Date Filing Date
JP2014531028A Active JP5827410B2 (ja) 2012-10-03 2013-10-03 オンラインゲームの同期方法及びサーバ装置
JP2015130195A Active JP6092951B2 (ja) 2012-10-03 2015-06-29 オンラインゲームの同期方法及びサーバ装置
JP2017022349A Active JP6462740B2 (ja) 2012-10-03 2017-02-09 オンラインゲームの同期方法及びサーバ装置
JP2018242439A Active JP6837046B2 (ja) 2012-10-03 2018-12-26 オンラインゲームの同期方法、オンラインゲームの同期システム、サーバ、クライアント端末、及びオンラインゲームの同期プログラム
JP2020193252A Active JP7058042B2 (ja) 2012-10-03 2020-11-20 オンラインゲームの同期方法、オンラインゲームの同期システム、サーバ、クライアント端末、及びオンラインゲームの同期プログラム

Country Status (3)

Country Link
US (6) US9849389B2 (ja)
JP (6) JP5827410B2 (ja)
WO (1) WO2014054762A1 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014054762A1 (ja) * 2012-10-03 2014-04-10 グリー株式会社 オンラインゲームの同期方法及びサーバ装置
JP5602963B1 (ja) * 2014-01-30 2014-10-08 グリー株式会社 ゲーム管理プログラム、ゲーム管理方法及びゲーム管理システム
JP6415994B2 (ja) * 2015-01-14 2018-10-31 株式会社コナミデジタルエンタテインメント ゲームシステム、ゲーム制御装置、及びプログラム
JP6498732B2 (ja) * 2017-08-04 2019-04-10 株式会社コロプラ ゲームプログラム、方法、および情報処理装置
JP7014956B2 (ja) * 2017-10-12 2022-02-02 株式会社ミクシィ 情報処理システム、情報処理方法、及びプログラム
US10758825B2 (en) * 2017-10-31 2020-09-01 King.Com Ltd. Controlling a user interface of a computer device
CN110690926A (zh) * 2019-09-17 2020-01-14 天津大学 一种单边带调制电控分段扫频源设计方法
US11207593B1 (en) * 2020-05-29 2021-12-28 Electronic Arts Inc. Scalable state synchronization for distributed game servers
JP6909915B1 (ja) * 2020-09-28 2021-07-28 株式会社Cygames マルチバトルを含むゲームのためのプログラム、方法、電子装置及びシステム

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002045574A (ja) * 2000-05-22 2002-02-12 Voltage Inc データ通信方法、および、サービス提供サーバ
JP2007300468A (ja) * 2006-05-01 2007-11-15 Make Softwear:Kk 写真シール作成装置、写真シール作成装置の制御方法、および写真シール作成装置の制御プログラム
JP2008073264A (ja) * 2006-09-21 2008-04-03 Square Enix Co Ltd ビデオゲーム制御システム、及びビデオゲーム制御サーバ
JP2013520730A (ja) * 2010-02-19 2013-06-06 クリンバース インコーポレイテッド 臨床用支払いネットワークシステム及び方法
WO2013094160A1 (ja) * 2011-12-19 2013-06-27 株式会社コナミデジタルエンタテインメント ゲーム制御装置、ゲーム制御方法、プログラム、記録媒体、ゲームシステム

Family Cites Families (84)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US80968A (en) * 1868-08-11 jones
US5166502A (en) * 1990-01-05 1992-11-24 Trend Plastics, Inc. Gaming chip with implanted programmable identifier means and process for fabricating same
FI111897B (fi) 1995-11-24 2003-09-30 Nokia Corp Kaksitoiminen tiedonvälityslaite
JP4048611B2 (ja) * 1998-07-08 2008-02-20 カシオ計算機株式会社 電子ペット飼育装置及び記録媒体
US6578054B1 (en) * 1999-10-04 2003-06-10 Microsoft Corporation Method and system for supporting off-line mode of operation and synchronization using resource state information
JP2001170360A (ja) * 1999-12-15 2001-06-26 Dowango:Kk 対戦ゲーム観戦システム
TW575447B (en) * 2000-02-02 2004-02-11 Nextech Corp Network system processing method and network system
JP2003529826A (ja) * 2000-02-24 2003-10-07 シーメンス アクチエンゲゼルシヤフト 第1のコンピュータ上のプログラムをサーバ上のプログラムと同期化するための方法および装置、コンピュータ読出し可能な記憶媒体およびコンピュータプログラム要素
JP2001265704A (ja) * 2000-03-23 2001-09-28 Megafusion Corp 仮想活動の制御方法
JP3825236B2 (ja) 2000-08-24 2006-09-27 株式会社タイトー ゲームシステム、ゲームプログラムが記憶された記録媒体
US7574493B2 (en) * 2000-11-22 2009-08-11 Cricket Communications, Inc. Method and system for improving the efficiency of state information transfer over a wireless communications network
US6947761B2 (en) * 2000-11-22 2005-09-20 Leap Wireless International Inc. Method and system for improving the efficiency of state information transfer over a wireless communications network
US20020129096A1 (en) * 2001-02-14 2002-09-12 Mansour Peter M. Platform-independent distributed user interface client architecture
US20020130040A1 (en) 2001-03-16 2002-09-19 4 Wave, Inc. System and method for performing sputter deposition using a devergent ion beam source and a rotating substrate
US8282475B2 (en) * 2001-06-15 2012-10-09 Igt Virtual leash for personal gaming device
JP2003006127A (ja) 2001-06-18 2003-01-10 Cyberstep Inc 分散処理システム、分散処理方法、およびその方法を利用可能なクライアント端末
WO2003001825A1 (en) * 2001-06-25 2003-01-03 Ram Jethanand Balani Method and device for effecting venue specific wireless communication
US8147334B2 (en) * 2003-09-04 2012-04-03 Jean-Marie Gatto Universal game server
CA2474207C (en) * 2002-02-05 2013-05-28 Mindplay Llc Determining gaming information
US20030171986A1 (en) * 2002-03-05 2003-09-11 Yuri Itkis Linked promotional bingo game
JP2003258813A (ja) * 2002-03-06 2003-09-12 Matsushita Electric Ind Co Ltd 通信システムに収容される受信局
JP3672879B2 (ja) 2002-03-11 2005-07-20 コナミ株式会社 オンラインスポーツゲームシステムおよびプログラム
US7412541B1 (en) * 2003-07-18 2008-08-12 Core Mobility, Inc. Tokenized compression of session initiation protocol data
CN101027875B (zh) * 2004-03-26 2010-06-16 拉霍亚网络公司 用于可扩缩的多功能网络通信的系统和方法
US7803054B1 (en) * 2004-03-31 2010-09-28 Microsoft Corporation Multi-vehicle cross-network coordination
WO2006009210A1 (ja) * 2004-07-21 2006-01-26 Sony Corporation コンテンツ処理装置,コンテンツ処理方法およびコンピュータプログラム
US7621813B2 (en) * 2004-12-07 2009-11-24 Microsoft Corporation Ubiquitous unified player tracking system
US8016677B2 (en) * 2004-12-08 2011-09-13 Microsoft Corporation System and method for configuring game data about players
CN100388194C (zh) * 2005-04-09 2008-05-14 华为技术有限公司 一种移动游戏客户端程序控制方法
JP3860193B2 (ja) * 2005-04-11 2006-12-20 株式会社コナミデジタルエンタテインメント ネットワークゲームシステム及びネットワークゲームプログラム
DK1713228T3 (da) * 2005-04-14 2013-01-07 Intralot S A Integrated Information Systems And Lottery Services Computerkommunikation-server og fremgangsmåde til automatisk at udføre og administrere en sammenligning
US20070021216A1 (en) * 2005-07-19 2007-01-25 Sony Ericsson Mobile Communications Ab Seamless gaming method and apparatus
JP3968758B2 (ja) 2005-09-08 2007-08-29 株式会社光栄 ネットワークゲームシステム,クライアント機器,サーバ機器,キャラクタ管理プログラムおよびキャラクタ管理プログラムを記憶した記憶媒体
US8705195B2 (en) * 2006-04-12 2014-04-22 Winview, Inc. Synchronized gaming and programming
JP2009512019A (ja) * 2005-10-06 2009-03-19 ヴェルジェンス エンターテインメント エルエルシー, ア カリフォルニア リミテッド ライアビリティー カンパニー 実質的に同時のアラートと、間欠的なコンテストにおけるその利用
JP2007160001A (ja) * 2005-12-16 2007-06-28 Aruze Corp 遊技システム、遊技サーバおよび遊技機
US8469805B2 (en) * 2006-01-20 2013-06-25 Microsoft Corporation Tiered achievement system
US7552148B2 (en) * 2006-02-28 2009-06-23 Microsoft Corporation Shutdown recovery
US20080020814A1 (en) * 2006-06-02 2008-01-24 Nicolas Kernene Broadband gaming system and method
US8932124B2 (en) * 2006-08-31 2015-01-13 Cfph, Llc Game of chance systems and methods
CA2767057A1 (en) * 2006-09-08 2008-03-13 E-Max Gaming Corporation Wireless electronic gaming unit
US20080076573A1 (en) * 2006-09-08 2008-03-27 John Loehrer Network-based game system
US7861150B2 (en) * 2006-11-07 2010-12-28 Microsoft Corporation Timing aspects of media content rendering
US20080220878A1 (en) * 2007-02-23 2008-09-11 Oliver Michaelis Method and Apparatus to Create or Join Gaming Sessions Based on Proximity
JP2008278269A (ja) * 2007-04-27 2008-11-13 Matsushita Electric Ind Co Ltd データ送信装置、データ受信装置及びデータ送受信システム
US8954507B2 (en) * 2007-06-22 2015-02-10 Microsoft Corporation Gathering and using awareness information
AU2008205438B2 (en) * 2007-09-13 2012-07-26 Universal Entertainment Corporation Gaming machine and gaming system using chips
US9242174B2 (en) * 2007-10-15 2016-01-26 Sony Corporation System and method for dynamically distributing game data
WO2009111515A2 (en) * 2008-03-04 2009-09-11 Wms Gaming, Inc. Controlling wagering transactions for multi-provider game content
US20090299960A1 (en) * 2007-12-21 2009-12-03 Lineberger William B Methods, systems, and computer program products for automatically modifying a virtual environment based on user profile information
US20090215538A1 (en) * 2008-02-22 2009-08-27 Samuel Jew Method for dynamically synchronizing computer network latency
US9177287B2 (en) * 2008-04-30 2015-11-03 Bally Gaming, Inc. Coordinating group play event for multiple game devices
US8812614B2 (en) * 2008-06-05 2014-08-19 Qualcomm Incorporated Data backup for a mobile computing device
US9498711B2 (en) * 2008-11-04 2016-11-22 Quado Media Inc. Multi-player, multi-screens, electronic gaming platform and system
US20100113159A1 (en) * 2008-11-06 2010-05-06 International Business Machines Corporation Method and apparatus for partitioning virtual worlds using prioritized topic spaces in virtual world systems
US20120122552A1 (en) * 2008-12-15 2012-05-17 Eui-Joon Youm Interactive asynchronous game bucketing facility
KR20100086819A (ko) * 2009-01-23 2010-08-02 삼성전자주식회사 휴대단말기의 게임 실행 방법 및 시스템
EP2237627B1 (en) * 2009-04-01 2012-01-18 Imec Method for resolving network contention
JP4789222B2 (ja) * 2009-04-13 2011-10-12 株式会社コロプラ 移動距離改ざん防止システムおよび方法
JP2012525076A (ja) * 2009-04-24 2012-10-18 デルタ・ヴィディオ・インコーポレイテッド デジタルビデオ配信システムにおける即時マルチチャネルビデオコンテンツブラウジングのためのシステム、方法、およびコンピュータ可読媒体
US20110014984A1 (en) * 2009-07-17 2011-01-20 Douglas Penman System and Method for Personality Adoption by Online Game Peripherals
US8939840B2 (en) * 2009-07-29 2015-01-27 Disney Enterprises, Inc. System and method for playsets using tracked objects and corresponding virtual worlds
EP2371432A3 (en) * 2010-03-09 2011-11-23 Crytek GmbH A multi-user computer-controlled video gaming system and a method of controlling at least one game mechanic
EP2383984B1 (en) * 2010-04-27 2019-03-06 LG Electronics Inc. Image display apparatus and method for operating the same
KR101688857B1 (ko) * 2010-05-13 2016-12-23 삼성전자주식회사 컨텐츠 중심 네트워크(ccn)에서 단말 및 허브의 통신 방법 및 컨텐츠 중심 네트워크를 위한 단말
US9832441B2 (en) * 2010-07-13 2017-11-28 Sony Interactive Entertainment Inc. Supplemental content on a mobile device
US20120165100A1 (en) * 2010-12-23 2012-06-28 Alcatel-Lucent Canada Inc. Crowd mobile synchronization
US20120172132A1 (en) * 2011-01-05 2012-07-05 Viacom International Inc. Content Synchronization
US20120190453A1 (en) * 2011-01-25 2012-07-26 Bossa Nova Robotics Ip, Inc. System and method for online-offline interactive experience
US20130053150A1 (en) * 2011-08-23 2013-02-28 Scott G. Miller Method and system to validate in-game actions in a multiplayer online game
US9224259B1 (en) * 2011-09-02 2015-12-29 Zynga Inc. Conflict resolution in asynchronous multiplayer games
US8535163B2 (en) * 2012-01-10 2013-09-17 Zynga Inc. Low-friction synchronous interaction in multiplayer online game
US8812856B2 (en) * 2012-02-10 2014-08-19 Zynga Inc. Methods and systems for state synchronization over a non-reliable network using signature processing
US20130217501A1 (en) * 2012-02-16 2013-08-22 Microsoft Corporation Presenting application challenges outside an application execution context
US20130260888A1 (en) * 2012-03-28 2013-10-03 Microsoft Corporation Phased game play for synchronized gaming schedule
US20130260887A1 (en) * 2012-03-28 2013-10-03 Microsoft Corporation Rule set for creating word-puzzles
US20130260885A1 (en) * 2012-03-29 2013-10-03 Playoke Gmbh Entertainment system and method of providing entertainment
WO2013177286A1 (en) * 2012-05-22 2013-11-28 Gaming Partners International Usa, Inc. Total money management system
US20150111643A1 (en) * 2012-05-23 2015-04-23 King.Com Limited Systems and methods for interactive gameplay
US20140038721A1 (en) * 2012-08-03 2014-02-06 Christopher R. ARCHER Method and system for facilitating online social interactions via cooperative gameplay
WO2014054762A1 (ja) * 2012-10-03 2014-04-10 グリー株式会社 オンラインゲームの同期方法及びサーバ装置
KR20140116240A (ko) * 2013-02-25 2014-10-02 삼성전자주식회사 서버 장치, 서버 장치의 게임 제어 방법, 모바일 장치, 모바일 장치의 제어 방법, 디스플레이 장치 및 디스플레이 장치의 게임 영상 표시 방법
JP5602963B1 (ja) * 2014-01-30 2014-10-08 グリー株式会社 ゲーム管理プログラム、ゲーム管理方法及びゲーム管理システム
EP4071700A1 (en) * 2015-08-03 2022-10-12 Angel Playing Cards Co., Ltd. Management system for table games

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002045574A (ja) * 2000-05-22 2002-02-12 Voltage Inc データ通信方法、および、サービス提供サーバ
JP2007300468A (ja) * 2006-05-01 2007-11-15 Make Softwear:Kk 写真シール作成装置、写真シール作成装置の制御方法、および写真シール作成装置の制御プログラム
JP2008073264A (ja) * 2006-09-21 2008-04-03 Square Enix Co Ltd ビデオゲーム制御システム、及びビデオゲーム制御サーバ
JP2013520730A (ja) * 2010-02-19 2013-06-06 クリンバース インコーポレイテッド 臨床用支払いネットワークシステム及び方法
WO2013094160A1 (ja) * 2011-12-19 2013-06-27 株式会社コナミデジタルエンタテインメント ゲーム制御装置、ゲーム制御方法、プログラム、記録媒体、ゲームシステム

Also Published As

Publication number Publication date
US20210213359A1 (en) 2021-07-15
JP6462740B2 (ja) 2019-01-30
US10987591B2 (en) 2021-04-27
WO2014054762A1 (ja) 2014-04-10
JP2019042607A (ja) 2019-03-22
US20200038760A1 (en) 2020-02-06
JP6837046B2 (ja) 2021-03-03
US20150238867A1 (en) 2015-08-27
US10080968B2 (en) 2018-09-25
US9849389B2 (en) 2017-12-26
US20180369697A1 (en) 2018-12-27
JP2015205203A (ja) 2015-11-19
JP2021036470A (ja) 2021-03-04
US10456688B2 (en) 2019-10-29
JP6092951B2 (ja) 2017-03-08
US11878251B2 (en) 2024-01-23
JP7058042B2 (ja) 2022-04-21
US20180065046A1 (en) 2018-03-08
JP7234440B2 (ja) 2023-03-07
JP2017099938A (ja) 2017-06-08
US20240115958A1 (en) 2024-04-11
JPWO2014054762A1 (ja) 2016-08-25
JP5827410B2 (ja) 2015-12-02

Similar Documents

Publication Publication Date Title
JP7058042B2 (ja) オンラインゲームの同期方法、オンラインゲームの同期システム、サーバ、クライアント端末、及びオンラインゲームの同期プログラム
US9827493B2 (en) Gaming assistance system and method
US9017170B2 (en) Method and apparatus for interactive gameplay across multiple computing platforms
US8909706B2 (en) Social networking data augmented gaming kiosk
EP3807766B1 (en) Shadow tracking of real-time interactive simulations for complex system analysis
JP5745559B2 (ja) ビデオゲーム処理装置、及びビデオゲーム処理プログラム
US20070191100A1 (en) Game builder for mobile device-based games
JP2019536541A (ja) 仮想的シーンにおける通知方法、関連装置、およびコンピュータ記憶媒体
JP5836919B2 (ja) ゲームシステム、並びにそのゲーム処理中断制御方法及びコンピュータプログラム
US20140235170A1 (en) Methods and systems for connecting multiple devices online
US9176925B2 (en) Non-transitory computer-readable storage medium storing game program, and information processing device
US9977795B1 (en) System and method for multiplayer network gaming
JP2015537267A (ja) 情報管理方法及びデバイス
KR20210003627A (ko) 전자 장치 및 전자 장치에서 게임의 관심 영역을 표시하는 방법
KR101447850B1 (ko) 실시간 대전 게임을 위한 게임 제공 방법 및 그 시스템
JP7397432B1 (ja) ゲームプログラム、方法、情報処理装置、システム
US10421014B2 (en) Information processing system and information processing program
CN109621414B (zh) 虚拟骰子的投掷结果显示方法、提供方法及装置
WO2014127651A1 (en) Methods and systems for connecting multiple devices online

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220428

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220428

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230126

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: 20230214

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230222

R150 Certificate of patent or registration of utility model

Ref document number: 7234440

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150