特許第5837559号(P5837559)IP Force 特許公報掲載プロジェクト 2015.5.11 β版

▶ グリー株式会社の特許一覧
<>
  • 特許5837559- 図000002
  • 特許5837559- 図000003
  • 特許5837559- 図000004
  • 特許5837559- 図000005
  • 特許5837559- 図000006
  • 特許5837559- 図000007
  • 特許5837559- 図000008
  • 特許5837559- 図000009
  • 特許5837559- 図000010
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】5837559
(24)【登録日】2015年11月13日
(45)【発行日】2015年12月24日
(54)【発明の名称】ゲームシステム、装置及びプログラム
(51)【国際特許分類】
   A63F 13/49 20140101AFI20151203BHJP
   A63F 13/35 20140101ALI20151203BHJP
   A63F 13/79 20140101ALI20151203BHJP
【FI】
   A63F13/49
   A63F13/35
   A63F13/79
【請求項の数】6
【全頁数】18
(21)【出願番号】特願2013-265150(P2013-265150)
(22)【出願日】2013年12月24日
(62)【分割の表示】特願2012-167561(P2012-167561)の分割
【原出願日】2012年7月27日
(65)【公開番号】特開2014-79641(P2014-79641A)
(43)【公開日】2014年5月8日
【審査請求日】2015年6月24日
【早期審査対象出願】
(73)【特許権者】
【識別番号】504437801
【氏名又は名称】グリー株式会社
【住所又は居所】東京都港区六本木六丁目10番1号
(74)【代理人】
【識別番号】100105957
【弁理士】
【氏名又は名称】恩田 誠
(74)【代理人】
【識別番号】100068755
【弁理士】
【氏名又は名称】恩田 博宣
(72)【発明者】
【氏名】ブーシェ・ロビン・晃
【住所又は居所】東京都港区六本木六丁目10番1号 グリー株式会社内
(72)【発明者】
【氏名】パロット・ジェイソン
【住所又は居所】東京都港区六本木六丁目10番1号 グリー株式会社内
【審査官】 植野 孝郎
(56)【参考文献】
【文献】 特開2012−71150(JP,A)
【文献】 特開2008−154620(JP,A)
【文献】 特許第4371183(JP,B2)
【文献】 特開2009−112587(JP,A)
【文献】 特開2002−306854(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
A63F13/00−13/98
A63F 9/24
(57)【特許請求の範囲】
【請求項1】
ユーザの操作に応じてゲームを個別に進行可能な複数のクライアント装置の各々に通信可能で、第1記憶手段を備えたサーバ装置に用いられるプログラムであって、
前記サーバ装置を、
前記ゲームの状況を示す状況情報と、前記ユーザのアカウント情報とを互いに関連付けて前記第1記憶手段に書込む手段、
前記各クライアント装置から状況情報及びアカウント情報を含む更新要求を受信する手段、
前記更新要求内のアカウント情報に基づいて、前記第1記憶手段内の全ての差分情報を累積加算した状況情報を算出する手段、
前記更新要求内の状況情報と、前記算出した状況情報との差分を算出する手段、
前記各クライアント装置からアカウント情報を含む取得要求を受信すると、当該取得要求内のアカウント情報に基づいて、前記第1記憶手段内の全ての差分情報を累積加算して状況情報を取得する手段、
前記取得した状況情報を前記取得要求の送信元に返信する手段、
として機能させるためのプログラム。
【請求項2】
請求項1に記載のプログラムにおいて、
前記状況情報は、前回のリビジョン番号に関連する状況情報との差分を示す差分情報であり、
前記第1記憶手段は、前記状況情報と、前記アカウント情報と、当該状況情報のリビジョン番号とを互いに関連付けて記憶する手段であり、
前記サーバ装置を、
前記差分を算出した後、前記第1記憶手段内の最新のリビジョン番号を更新してなるリビジョン番号を当該第1記憶手段に追加記憶させる手段、
前記算出した差分を状況情報として、前記追加記憶させたリビジョン番号に関連付けて前記第1記憶手段に書込む手段、
として更に機能させるためのプログラム。
【請求項3】
ユーザの操作に応じてゲームを個別に進行可能な複数のクライアント装置と、前記各クライアント装置に通信可能なサーバ装置とを備えたゲームシステムであって、
前記サーバ装置は、
前記ゲームの状況を示す状況情報と、前記ユーザのアカウント情報とを互いに関連付けて記憶する第1記憶手段と、
前記各クライアント装置から状況情報及びアカウント情報を含む更新要求を受信する手段と、
前記更新要求内のアカウント情報に基づいて、前記第1記憶手段内の全ての差分情報を累積加算した状況情報を算出する手段と、
前記更新要求内の状況情報と、前記算出した状況情報との差分を算出する手段と、
前記各クライアント装置からアカウント情報を含む取得要求を受信すると、当該取得要求内のアカウント情報に基づいて、前記第1記憶手段内の全ての差分情報を累積加算して状況情報を取得する手段と、
前記取得した状況情報を前記取得要求の送信元に返信する手段と
を備え、
前記各クライアント装置は、
前記状況情報及び前記アカウント情報が書き込まれる第2記憶手段と、
前記ユーザのアカウント情報を含む取得要求の入力を受け付ける手段と、
前記入力を受け付けた取得要求に含まれるアカウント情報を前記第2記憶手段に書込むと共に、当該取得要求を前記サーバ装置に送信する手段と、
前記取得要求の送信に応じて、前記サーバ装置から受信した状況情報を第2記憶手段に書込む手段と、
前記第2記憶手段内の状況情報に基づいて前記ゲームの状況を復帰させた後、当該ゲームを進行させる手段と、
前記ゲームの進行中、当該ゲームの状況を保存する指示の入力を受け付ける手段と、
前記入力を受け付けた指示に基づいて、前記ゲームの現在の状況を示す状況情報と、前記第2記憶手段内のアカウント情報とを含む更新要求を前記サーバ装置に送信する手段と
を備えたことを特徴とするゲームシステム。
【請求項4】
ユーザの操作に応じてゲームを個別に進行可能な複数のクライアント装置の各々に通信可能なサーバ装置であって、
前記ゲームの状況を示す状況情報と、前記ユーザのアカウント情報とを互いに関連付けて記憶する第1記憶手段と、
前記各クライアント装置から状況情報及びアカウント情報を含む更新要求を受信する手段と、
前記更新要求内のアカウント情報に基づいて、前記第1記憶手段内の全ての差分情報を累積加算した状況情報を算出する手段と、
前記更新要求内の状況情報と、前記算出した状況情報との差分を算出する手段と、
前記各クライアント装置からアカウント情報を含む取得要求を受信すると、当該取得要求内のアカウント情報に基づいて、前記第1記憶手段内の全ての差分情報を累積加算して状況情報を取得する手段と、
前記取得した状況情報を前記取得要求の送信元に返信する手段と
を備えたことを特徴とするサーバ装置。
【請求項5】
サーバ装置に通信可能で、且つユーザの操作に応じてゲームを個別に進行可能なクライアント装置であって、
前記ゲームの状況を示す状況情報及び前記ユーザのアカウント情報が書き込まれる第2記憶手段と、
前記ユーザのアカウント情報を含む取得要求の入力を受け付ける手段と、
前記入力を受け付けた取得要求に含まれるアカウント情報を前記第2記憶手段に書込むと共に、当該取得要求を前記サーバ装置に送信する手段と、
前記取得要求の送信に応じて、前記サーバ装置から受信した状況情報を第2記憶手段に書込む手段と、
前記第2記憶手段内の状況情報に基づいて前記ゲームの状況を復帰させた後、当該ゲームを進行させる手段と、
前記ゲームの進行中、当該ゲームの状況を保存する指示の入力を受け付ける手段と、
前記入力を受け付けた指示に基づいて、前記ゲームの現在の状況を示す状況情報と、前記第2記憶手段内のアカウント情報とを含む更新要求を前記サーバ装置に送信する手段と
を備え、
前記サーバ装置は、
前記状況情報及び前記アカウント情報を互いに関連付けて第1記憶手段に記憶し、
前記クライアント装置又は他のクライアント装置から状況情報及びアカウント情報を含む更新要求を受信すると、当該更新要求内のアカウント情報に基づいて、前記第1記憶手段内の全ての差分情報を累積加算した状況情報を算出し、前記更新要求内の状況情報と、前記算出した状況情報との差分を算出し、
前記クライアント装置又は他のクライアント装置からアカウント情報を含む取得要求を受信すると、当該取得要求内のアカウント情報に基づいて、前記第1記憶手段内の全ての差分情報を累積加算して状況情報を取得し、前記取得した状況情報を前記取得要求の送信元に返信することを特徴とするクライアント装置。
【請求項6】
サーバ装置に通信可能で、且つユーザの操作に応じてゲームを個別に進行可能であり、前記ゲームの状況を示す状況情報及び前記ユーザのアカウント情報が書き込まれる第2記憶手段を備えたクライアント装置に用いられるプログラムであって、
前記クライアント装置を、
前記ユーザのアカウント情報を含む取得要求の入力を受け付ける手段、
前記入力を受け付けた取得要求に含まれるアカウント情報を前記第2記憶手段に書込むと共に、当該取得要求を前記サーバ装置に送信する手段、
前記取得要求の送信に応じて、前記サーバ装置から受信した状況情報を第2記憶手段に書込む手段、
前記第2記憶手段内の状況情報に基づいて前記ゲームの状況を復帰させた後、当該ゲームを進行させる手段、
前記ゲームの進行中、当該ゲームの状況を保存する指示の入力を受け付ける手段、
前記入力を受け付けた指示に基づいて、前記ゲームの現在の状況を示す状況情報と、前記第2記憶手段内のアカウント情報とを含む更新要求を前記サーバ装置に送信する手段、
として機能させ、
前記サーバ装置は、
前記状況情報及び前記アカウント情報を互いに関連付けて第1記憶手段に記憶し、
前記クライアント装置又は他のクライアント装置から状況情報及びアカウント情報を含む更新要求を受信すると、当該更新要求内のアカウント情報に基づいて、前記第1記憶手段内の全ての差分情報を累積加算した状況情報を算出し、前記更新要求内の状況情報と、前記算出した状況情報との差分を算出し、
前記クライアント装置又は他のクライアント装置からアカウント情報を含む取得要求を受信すると、当該取得要求内のアカウント情報に基づいて、前記第1記憶手段内の全ての差分情報を累積加算して状況情報を取得し、前記取得した状況情報を前記取得要求の送信元に返信するプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ゲームシステム、装置及びプログラムに関する。
【背景技術】
【0002】
近年、ゲームプログラムを保存したサーバ装置と、サーバ装置からダウンロードした所望のゲームプログラムを実行するクライアント装置とを備えたゲームシステムが広く知られている。ここで、クライアント装置としては、プログラムを実行可能なコンピュータであればよく、例えば、デスクトップ型又はノート型のパーソナルコンピュータや、携帯電話、スマートフォン、タブレット端末等が適宜、使用されている。
【0003】
ゲームプログラムとしては、トランプゲームのように短時間で終わるプログラムや、ロールプレイングゲームのように一日で終わらないプログラムのように、多数の種類がある。ユーザは、適宜、クライアント装置を操作し、クライアント装置に実行されるゲームプログラムに応じて、ゲームを楽しむ。
【0004】
また、クライアント装置は、一日で終わらないゲームプログラムを実行する場合、ユーザの操作に応じて、ゲームの進行を中断する。後日、ユーザは、そのクライアント装置を操作し、中断した状態からゲームを再開する(例えば、特許文献1参照。)。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2010−233791号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
以上のようなゲームシステムは、通常は何の問題もないが、本発明者の検討によれば、以下のように改良の余地がある。
【0007】
すなわち、ユーザによっては、スマートフォン及びタブレット端末などの複数のクライアント装置を交互に用い、各クライアント装置間でゲームを継続的に実行したい要望がある。また、このようなユーザは、一方のクライアント装置でゲームを実行した状態のまま、他方のクライアント装置でもゲームを再開し、他方のクライアント装置でゲームを中断せずに、一方のクライアント装置でゲームを中断する等というように、各クライアント装置による並列的な実行を含んでゲームを継続的に実行したい要望がある。
【0008】
しかしながら、従来のゲームシステムは、各クライアント装置間でゲームを継続的に実行することを想定していない。また特に、従来のゲームシステムは、各クライアント装置による並列的な実行を含んでゲームを継続的に実行することを全く想定していない。
【0009】
よって、従来のゲームシステムは、これら想定外の要望にも対応できるようにする観点から、改良の余地がある。
【0010】
本発明は上記実情を考慮してなされたもので、各クライアント装置間でゲームを継続的に実行し得るゲームシステム、装置及びプログラムを提供することを目的とする。
【0011】
また、本発明の他の目的は、各クライアント装置による並列的な実行を含んでゲームを継続的に実行し得るゲームシステム、装置及びプログラムを提供することにある。
【課題を解決するための手段】
【0012】
本発明の一つの局面は、ユーザの操作に応じてゲームを個別に進行可能な複数のクライアント装置と、前記各クライアント装置に通信可能なサーバ装置とを備えたゲームシステムであって、前記サーバ装置としては、前記ゲームの状況を示す状況情報と、前記ユーザのアカウント情報とを互いに関連付けて記憶する第1記憶手段と、前記各クライアント装置から状況情報及びアカウント情報を含む更新要求を受信する手段と、前記更新要求内のアカウント情報に基づいて、前記第1記憶手段内の全ての差分情報を累積加算した状況情報を算出する手段と、前記更新要求内の状況情報と、前記算出した状況情報との差分を算出する手段と、前記各クライアント装置からアカウント情報を含む取得要求を受信すると、当該取得要求内のアカウント情報に基づいて、前記第1記憶手段内の全ての差分情報を累積加算して状況情報を取得する手段と、前記取得した状況情報を前記取得要求の送信元に返信する手段とを備え、前記各クライアント装置としては、前記状況情報及び前記アカウント情報が書き込まれる第2記憶手段と、前記ユーザのアカウント情報を含む取得要求の入力を受け付ける手段と、前記入力を受け付けた取得要求に含まれるアカウント情報を前記第2記憶手段に書込むと共に、当該取得要求を前記サーバ装置に送信する手段と、前記取得要求の送信に応じて、前記サーバ装置から受信した状況情報を第2記憶手段に書込む手段と、前記第2記憶手段内の状況情報に基づいて前記ゲームの状況を復帰させた後、当該ゲームを進行させる手段と、前記ゲームの進行中、当該ゲームの状況を保存する指示の入力を受け付ける手段と、前記入力を受け付けた指示に基づいて、前記ゲームの現在の状況を示す状況情報と、前記第2記憶手段内のアカウント情報とを含む更新要求を前記サーバ装置に送信する手段とを備えているゲームシステムである。
【発明の効果】
【0013】
以上説明したように本発明によれば、各クライアント装置間でゲームを継続的に実行することができる。また、本発明によれば、各クライアント装置による並列的な実行を含んでゲームを継続的に実行することができる。
【図面の簡単な説明】
【0014】
図1】本発明の第1の実施形態に係るゲームシステムの構成を示す模式図である。
図2】同実施形態におけるサーバ装置の記憶部を説明するための模式図である。
図3】同実施形態における取得要求を説明するための模式図である。
図4】同実施形態における更新要求を説明するための模式図である。
図5】同実施形態における動作を説明するためのシーケンス図である。
図6】同実施形態における動作を説明するためのシーケンス図である。
図7】同実施形態における動作を説明するための模式図である。
図8】本発明の第2の実施形態に係るサーバ装置の記憶部を説明するための模式図である。
図9】同実施形態における動作を説明するためのシーケンス図である。
【発明を実施するための形態】
【0015】
以下、本発明の各実施形態について図面を用いて説明する。なお、以下の各装置は、それぞれハードウェア構成、又はハードウェア資源とソフトウェアとの組合せ構成のいずれでも実施可能となっている。組合せ構成のソフトウェアとしては、予めネットワーク又は記憶媒体から各装置のコンピュータにインストールされ、対応する装置の機能を実現させるためのプログラムが用いられる。
【0016】
<第1の実施形態>
図1は本発明の第1の実施形態に係るゲームシステムの構成を示す模式図であり、図2はサーバ装置の記憶部を説明するための模式図であり、図3及び図4は各要求を説明するための模式図である。このゲームシステムは、サーバ装置10と、ユーザの操作に応じてゲームを個別に進行可能な複数のクライアント装置20,30とを備えている。各装置10,20,30は、コンピュータネットワーク40及び移動通信網50を介して互いに通信可能である。コンピュータネットワーク40は、コンピュータ同士の通信を可能とするネットワークであれば任意のものが適用可能であり、ここではインターネットを用いている。移動通信網50は、携帯電話、スマートフォン及びタブレット端末等の携帯通信装置としてのコンピュータの通信を可能とするものであれば任意のものが適用可能である。第1のクライアント装置20は、例えば、iOS等のOSを用いたiPad(登録商標)等のタブレット端末である。第2のクライアント装置30は、例えば、Android(登録商標)等のOSを用いたスマートフォンである。なお、各クライアント装置20,30は、この例では携帯通信装置としたが、これに限らず、いずれか一方又は両方がデスクトップ型のパーソナルコンピュータの如き、据置型のコンピュータであってもよい。また、各クライアント装置20,30は、この例では互いに異なるOSを用いたが、これに限らず、互いに同一のOSを用いてもよい。すなわち、各クライアント装置20,30は、この例では互いに異なるプラットフォームを用いたが、これに限らず、互いに同一のプラットフォームを用いてもよい。また、各クライアント装置20,30は、この例では2台としたが、これに限らず、3台以上でもよい。
【0017】
ここで、サーバ装置10は、記憶部11、取得処理部12、更新処理部13及び通信部14を備えている。
【0018】
記憶部11は、各部12〜14から読出/書込可能な記憶装置であり、図2に示すように、ゲームの状況を示す状況情報と、ユーザのアカウント情報と、状況情報のリビジョン番号とを互いに関連付けて記憶する。
【0019】
ここで、状況情報は、ゲームを中断した時点から再開するために、例えば、ゲーム内キャラクタの位置、時間、得点、…等といった状況を示すデータを含んでいる。なお、状況情報の具体的なデータは、ゲームにより異なるので、例示した位置、時間、得点、…等といったデータに限定されない。また、状況情報は、各クライアント装置20,30のプラットフォームに依存しないように、プラットフォームを示す情報を含まないようにしてもよい。例えば、状況情報は、各クライアント装置20,30のOSに依存しないように、OSを示す情報を含まないようにしてもよい。
【0020】
アカウント情報は、ユーザを識別する情報であり、この例ではユーザIDを用いている。但し、アカウント情報は、これに限らず、ユーザを識別できればよいので、ユーザID及びパスワードでもよく、ユーザIDとユーザの生体情報でもよい。
【0021】
リビジョン番号は、状況情報を更新する毎に更新される番号であり、この例ではゲームIDとリビジョン値を含む番号とし、ゲームIDを固定してリビジョン値を更新することにより、リビジョン番号を更新している。なお、ゲームIDは、例えば1つのゲームしかない場合のように、何らかの手段でゲームが特定される場合には省略してもよい。また、リビジョン番号からゲームIDを省略し、ゲームIDを、リビジョン番号(リビジョン値)、状況情報及びアカウント情報と関連付けてもよい。また、リビジョン番号の更新は、この例ではリビジョン値の増加としたが、これに限らず、リビジョン値の減少としてもよい。また、リビジョン値の増加は+1ずつに限らず、+2や+10といった任意の値ずつの増加として構わない。減少の場合も同様である。また、リビジョン番号の初期値は、“1”に限らず、“0”や“100”といった任意の値として構わない。
【0022】
取得処理部12は、図3に示すように、各クライアント装置20,30からアカウント情報を含む取得要求rq1を受信すると、当該取得要求rq1内のアカウント情報に基づいて、記憶部11から状況情報及びリビジョン番号を取得する取得機能と、取得した状況情報及びリビジョン番号を取得要求rq1の送信元に返信する機能とをもっている。
【0023】
更新処理部13は、図4に示すように、各クライアント装置から状況情報、アカウント情報及びリビジョン番号を含む更新要求rq2を受信する機能と、更新要求rq2内のアカウント情報に基づいて、記憶部11内のリビジョン番号を読み出す機能と、当該読み出したリビジョン番号と、更新要求rq2内のリビジョン番号とが一致するか否かを判定する機能と、当該判定の結果、両者が一致した場合には、更新要求rq2に基づいて、記憶部11内のリビジョン番号及び状況情報を更新する更新機能と、判定の結果、否の場合には、更新要求rq2を破棄する機能とをもっている。
【0024】
通信部14は、コンピュータネットワーク40及び移動通信網50を介して各クライアント装置20,30に通信するための通信機能部である。
【0025】
続いて、第1及び第2のクライアント装置20,30の構成を説明する。各クライアント装置20,30は、前述したOSやプラットフォーム等の実装上の構成を除き、本実施形態に関係する機能ブロックが互いに同一構成であるので、ここでは第1のクライアント装置20を代表例に挙げて説明する。なお、以下の第1のクライアント装置20の説明は、参照符号の十の位を“2”から“3”にすることにより、第2のクライアント装置30の説明として読み替え可能である。
【0026】
第1のクライアント装置20は、記憶部21、取得要求部22、ゲーム進行部23、更新要求部24及び通信部25を備えている。
【0027】
記憶部21は、各部22〜25から読出/書込可能な記憶装置であり、状況情報、アカウント情報及びリビジョン番号が書き込まれる。
【0028】
取得要求部22は、ユーザのアカウント情報を含む取得要求の入力を受け付ける機能と、入力を受け付けた取得要求に含まれるアカウント情報を記憶部21に書込むと共に、当該取得要求をサーバ装置10に送信する機能と、取得要求の送信に応じて、サーバ装置10から受信した状況情報及びリビジョン番号を記憶部21に書込む機能とをもっている。
【0029】
ゲーム進行部23は、記憶部21内の状況情報に基づいてゲームの状況を復帰させた後、当該ゲームを進行させる機能をもっている。
【0030】
更新要求部24は、ゲームの進行中、当該ゲームの状況を保存する指示の入力を受け付ける機能と、当該入力を受け付けた指示に基づいて、ゲームの現在の状況を示す状況情報と、記憶部21内のアカウント情報及びリビジョン番号とを含む更新要求をサーバ装置10に送信する機能とをもっている。
【0031】
通信部25は、移動通信網50及びコンピュータネットワーク40を介してサーバ装置10に通信するための通信機能部である。
【0032】
次に、以上のように構成されたゲームシステムの動作について図5乃至図7を用いて説明する。
【0033】
いま、第1のクライアント装置20は、自宅にいるユーザに携帯されており、第2のクライアント30は、当該ユーザの会社に保管されているとする。また、自宅内のユーザがゲームを開始したくなったとする。
【0034】
このとき、第1のクライアント装置20では、図5に示すように、ユーザの操作に応じて、取得要求部22が、ユーザのアカウント情報を含む取得要求の入力を受け付ける(ST1)。取得要求部22は、入力を受け付けた取得要求に含まれるアカウント情報を記憶部21に書込むと共に(ST2)、当該取得要求rq1をサーバ装置10に送信する(ST3)。
【0035】
サーバ装置10では、取得処理部12が、取得要求rq1を受信すると(ST4)、当該取得要求rq1内のアカウント情報に基づいて、記憶部11から状況情報及びリビジョン番号“n”を取得する(ST5)。取得処理部12は、取得した状況情報及びリビジョン番号“n”を取得要求rq1の送信元の第1のクライアント装置20に返信する(ST6)。
【0036】
第1のクライアント装置20では、取得要求部22が、取得要求rq1の送信に応じて、サーバ装置10から受信した状況情報及びリビジョン番号“n”を記憶部21に書込む(ST7〜ST8)。
【0037】
次に、第1のクライアント装置20では、ゲーム進行部23が、記憶部21内の状況情報に基づいてゲームの状況を復帰させた後、ユーザの操作に応じて、当該ゲームを進行させる。これにより、ユーザの操作に応じて、オフラインでゲームが進行する(ST9)。
【0038】
しばらくした後、自宅内のユーザがゲームを中断したくなったとする。
【0039】
第1のクライアント装置20では、ユーザの操作に応じて、更新要求部24が、ゲームの進行中、当該ゲームの状況を保存する指示の入力を受け付ける(ST10)。更新要求部24は、当該入力を受け付けた指示に基づいて、ゲームの現在の状況を示す状況情報と、記憶部21内のアカウント情報及びリビジョン番号“n”とを含む更新要求rq2をサーバ装置10に送信する(ST11)。
【0040】
サーバ装置10では、更新処理部13が、更新要求rq2を受信すると(ST12)、更新要求rq2内のアカウント情報に基づいて、記憶部11内のリビジョン番号“n”を読み出す(ST13)。更新処理部13は、当該読み出したリビジョン番号“n”と、更新要求rq2内のリビジョン番号“n”とが一致するか否かを判定し(ST14)、当該判定の結果、両者が一致した場合には、更新要求rq2に基づいて、記憶部11内のリビジョン番号及び状況情報を更新する(ST15)。ステップST14の判定の結果、否の場合には、更新処理部13は、更新要求rq2を破棄する(ST16)。この例では、ステップST15が実行され、記憶部11がリビジョン番号“n+1”及びステップST10の時点でのゲームの状況を示す状況情報に更新されたとする。
【0041】
ステップST15又はST16の終了後、ゲームは中断される。
【0042】
以上のステップST1〜ST16の動作は、第1のクライアント装置20に代えて、第2のクライアント装置30を用いた場合でも同様である。すなわち、この後、ユーザが自宅を出て会社に出勤し、昼休みに第2のクライアント装置30を用いてゲームをする場合も同様に動作が実行される。
【0043】
次に、ステップST14で否と判定される場合(リビジョン番号が不一致となる場合)について説明する。これは、一方のクライアント装置20でゲームを実行した状態のまま、他方のクライアント装置30でもゲームを再開し、他方のクライアント装置30でゲームを中断せずに、一方のクライアント装置20でゲームを中断する等というように、各クライアント装置20,30による並列的な実行を含んでゲームを継続的に実行した場合に相当する。
【0044】
第1のクライアント装置20及びサーバ装置10では、図6及び図7に示すように、前述したステップST1〜ST8の動作を実行する。これにより、第1のクライアント装置20では、サーバ装置10から受信した状況情報及びリビジョン番号“n”が記憶部21に書込まれる(ST8)。このリビジョン番号“n”は、図7におけるリビジョン番号“2”であるとする。
【0045】
次に、第1のクライアント装置20では、ゲーム進行部23が、記憶部21内の状況情報に基づいてゲームの状況を復帰させた後、ユーザの操作に応じて、当該ゲームを進行させる。これにより、ユーザの操作に応じて、オフラインでゲームが進行する(ST9)。
【0046】
ここで、自宅内のユーザが第1のクライアント装置20でゲームを中断せずに外出し、外出先で第2のクライアント装置30によりゲームを再開したとする(ST−u1)。例えば、自宅内のユーザが第1のクライアント装置20でゲーム中に寝てしまい、朝起きて会社に出勤し、昼休みに第2のクライアント装置30によりゲームを再開するといった状況である。
【0047】
第2のクライアント装置30及びサーバ装置10では、ステップST1〜ST8と同様にステップST1’〜ST8’の動作を実行する。これにより、第2のクライアント装置30では、サーバ装置10から受信した状況情報及びリビジョン番号“n”が記憶部21に書込まれる(ST8’)。
【0048】
次に、第2のクライアント装置30では、ゲーム進行部33が、記憶部31内の状況情報に基づいてゲームの状況を復帰させた後、ユーザの操作に応じて、当該ゲームを進行させる。これにより、ユーザの操作に応じて、オフラインでゲームが進行する(ST9’)。
【0049】
ここで、また外出先のユーザが第2のクライアント装置30でゲームを中断せずに帰宅し、自宅で第1のクライアント装置20によりゲームを継続したとする(ST−u2)。
【0050】
第1のクライアント装置20及びサーバ装置10では、前述したステップST10〜ST15の動作を実行する。これにより、サーバ装置10の記憶部11は、リビジョン番号“n+1”及びステップST10の時点でのゲームの状況を示す状況情報に更新される(ST15)。このリビジョン番号“n+1”は、図7におけるリビジョン番号“3”であるとする。ステップST15の終了後、第1のクライアント装置20では、ゲームが中断される。
【0051】
その後、自宅内のユーザが外出し、外出先で第2のクライアント装置30によりゲームを継続したとする(ST−u3)。
【0052】
第2のクライアント装置30では、ユーザの操作に応じて、更新要求部34が、ゲームの進行中、当該ゲームの状況を保存する指示の入力を受け付ける(ST10’)。更新要求部34は、当該入力を受け付けた指示に基づいて、ゲームの現在の状況を示す状況情報と、記憶部31内のアカウント情報及びリビジョン番号“n”とを含む更新要求rq2をサーバ装置10に送信する(ST11’)。
【0053】
サーバ装置10では、更新処理部13が、更新要求rq2を受信すると(ST12’)、更新要求rq2内のアカウント情報に基づいて、記憶部11内のリビジョン番号“n+1”を読み出す(ST13’)。更新処理部13は、当該読み出したリビジョン番号“n+1”と、更新要求rq2内のリビジョン番号“n”とが一致するか否かを判定し(ST14)、当該判定の結果、両者が一致した場合には、更新要求rq2に基づいて、記憶部11内のリビジョン番号及び状況情報を更新する(ST15’)。ステップST14の判定の結果、否の場合には、更新処理部13は、更新要求rq2を破棄する(ST16’)。この例では、両者が一致しないので、更新要求rq2が破棄される(ST16’)
ST16の終了後、ゲームは中断される。
【0054】
次に、第1及び第2のクライアント装置20,30のいずれかがゲームを再開する場合には、リビジョン番号“n+1”(=3)及び状況情報をサーバ装置10から受信することになる。
【0055】
上述したように本実施形態によれば、サーバ装置10内の状況情報を各クライアント装置20,30が取得し、この状況情報に基づいてゲームを復帰させた後、当該ゲームを進行し、中断時にはサーバ装置10内の状況情報を更新する構成により、各クライアント装置間でゲームを継続的に実行することができる。
【0056】
また、サーバ装置10が状況情報及びリビジョン番号を関連付けて記憶し、更新要求内のリビジョン番号と、記憶部11内のリビジョン番号とが一致した場合には状況情報及びリビジョン番号を更新し、両リビジョン番号が不一致の場合には更新要求を破棄する構成により、各クライアント装置による並列的にゲームを実行したときでも、サーバ装置10が記憶する状況情報に(最新のリビジョン番号を優先するように)一貫性を持たせることができるので、各クライアント装置による並列的な実行を含んでゲームを継続的に実行することができる。
【0057】
さらに、状況情報が各クライアント装置20,30のプラットフォームを示す情報を含まない場合には、各クライアント装置20,30のプラットフォームに依存せずに、前述した効果を得ることができる。すなわち、異なるプラットフォームの各クライアント装置20,30をユーザが用いる場合にも、前述した効果を得ることができる。
【0058】
<第2の実施形態>
次に、本発明の第2の実施形態に係るゲームシステムについて、前述した図面を参照しながら説明する。
【0059】
第2の実施形態は、第1の実施形態の変形例であり、図8に示すように、サーバ装置10の記憶部11内の状況情報が、前回のリビジョン番号に関連する状況情報との差分を示す差分情報となっている。
【0060】
これに伴い、サーバ装置10における取得処理部12内の取得機能及び更新処理部13内の更新機能が以下のように各機能から構成されている。
【0061】
すなわち、取得処理部12の取得機能は、前述した通り、各クライアント装置20,30からアカウント情報を含む取得要求rq1を受信すると、当該取得要求rq1内のアカウント情報に基づいて、記憶部11から状況情報及びリビジョン番号を取得する機能である。
【0062】
但し、第2の実施形態では、この取得機能が、取得要求rq1内のアカウント情報に基づいて、記憶部11内の全ての差分情報を累積加算して状況情報を取得する機能と、取得要求内のアカウント情報に基づいて、記憶部11内の最新のリビジョン番号を取得する機能とをもっている。
【0063】
また、更新処理部13の更新機能は、前述した通り、(リビジョン番号の一致/不一致の)判定の結果、両者が一致した場合には、更新要求rq2に基づいて、記憶部11内のリビジョン番号及び状況情報を更新する機能である。
【0064】
但し、第2の実施形態では、この更新機能が、更新要求内のアカウント情報に基づいて、記憶部11内の全ての差分情報を累積加算した状況情報を算出する機能と、当該更新要求内の状況情報と、当該算出した状況情報との差分を算出する機能と、記憶部11内の最新のリビジョン番号を更新してなるリビジョン番号を当該記憶部11に追加記憶させる機能と、当該算出した差分を状況情報として、追加記憶させたリビジョン番号に関連付けて記憶部11に書込む機能とをもっている。
【0065】
また、各クライアント装置20,30及びサーバ装置10の他の各部11,14の構成は、前述した通りである。また、取得処理部12の取得機能以外の各機能は、前述した通りである。更新処理部13の更新機能以外の各機能も前述した通りである。
【0066】
以上のような構成によれば、前述したステップST5では、図9に示すように、サーバ装置10の取得処理部12が、取得要求rq1内のアカウント情報に基づいて、記憶部11内の全ての差分情報を累積加算して状況情報を取得すると共に(ST5−1)、取得要求内のアカウント情報に基づいて、記憶部11内の最新のリビジョン番号を取得する(ST5−2)。すなわち、前述したステップST5は、ステップST5−1〜ST5−2により実行される。
【0067】
また、前述したステップST15では、サーバ装置10の更新処理部13が、更新要求内のアカウント情報に基づいて、記憶部11内の全ての差分情報を累積加算した状況情報を算出すると共に(ST15−1)、当該更新要求内の状況情報と、当該算出した状況情報との差分を算出する(ST15−2)。また、更新処理部13は、記憶部11内の最新のリビジョン番号を更新してなるリビジョン番号を当該記憶部11に追加記憶させると共に(ST15−3)、当該算出した差分を状況情報として、追加記憶させたリビジョン番号に関連付けて記憶部11に書込む(ST15−4)。すなわち、前述したステップST15は、ステップST15−1〜ST15−4により実行される。
【0068】
なお、他のステップST1〜ST4,ST6〜ST14,ST16は、前述同様に実行される。
【0069】
従って、第2の実施形態によれば、サーバ装置10の記憶部11内の状況情報が、前回のリビジョン番号に関連する状況情報との差分を示す差分情報とした構成に変形しても、第1の実施形態と同様の効果を得ることができる。
【0070】
なお、上記実施形態に記載した手法は、コンピュータに実行させることのできるプログラムとして、磁気ディスク(フロッピー(登録商標)ディスク、ハードディスクなど)、光ディスク(CD−ROM、DVDなど)、光磁気ディスク(MO)、半導体メモリなどの記憶媒体に格納して頒布することもできる。
【0071】
なお、本願発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態に亘る構成要素を適宜組合せてもよい。
以下に、本願の原出願の当初の特許請求の範囲に記載された発明を付記する。
【0072】
[1] ユーザの操作に応じてゲームを個別に進行可能な複数のクライアント装置と、前記各クライアント装置に通信可能なサーバ装置とを備えたゲームシステムであって、前記サーバ装置は、前記ゲームの状況を示す状況情報と、前記ユーザのアカウント情報と、前記状況情報のリビジョン番号とを互いに関連付けて記憶する第1記憶手段と、前記各クライアント装置から状況情報、アカウント情報及びリビジョン番号を含む更新要求を受信する手段と、前記更新要求内のアカウント情報に基づいて、前記第1記憶手段内のリビジョン番号を読み出す手段と、前記読み出したリビジョン番号と、前記更新要求内のリビジョン番号とが一致するか否かを判定する手段と、前記判定の結果、両者が一致した場合には、前記更新要求に基づいて、前記第1記憶手段内のリビジョン番号及び状況情報を更新する更新手段と、前記判定の結果、否の場合には、前記更新要求を破棄する手段と、前記各クライアント装置からアカウント情報を含む取得要求を受信すると、当該取得要求内のアカウント情報に基づいて、前記第1記憶手段から状況情報及びリビジョン番号を取得する取得手段と、前記取得した状況情報及びリビジョン番号を前記取得要求の送信元に返信する手段とを備え、前記各クライアント装置は、前記状況情報、前記アカウント情報及び前記リビジョン番号が書き込まれる第2記憶手段と、前記ユーザのアカウント情報を含む取得要求の入力を受け付ける手段と、前記入力を受け付けた取得要求に含まれるアカウント情報を前記第2記憶手段に書込むと共に、当該取得要求を前記サーバ装置に送信する手段と、前記取得要求の送信に応じて、前記サーバ装置から受信した状況情報及びリビジョン番号を第2記憶手段に書込む手段と、前記第2記憶手段内の状況情報に基づいて前記ゲームの状況を復帰させた後、当該ゲームを進行させる手段と、前記ゲームの進行中、当該ゲームの状況を保存する指示の入力を受け付ける手段と、前記入力を受け付けた指示に基づいて、前記ゲームの現在の状況を示す状況情報と、前記第2記憶手段内のアカウント情報及びリビジョン番号とを含む更新要求を前記サーバ装置に送信する手段とを備えたことを特徴とするゲームシステム。
【0073】
[2] 上記[1]に記載のゲームシステムにおいて、前記状況情報は、前回のリビジョン番号に関連する状況情報との差分を示す差分情報であり、前記更新手段は、前記更新要求内のアカウント情報に基づいて、前記第1記憶手段内の全ての差分情報を累積加算した状況情報を算出する手段と、前記更新要求内の状況情報と、前記算出した状況情報との差分を算出する手段と、前記第1記憶手段内の最新のリビジョン番号を更新してなるリビジョン番号を当該第1記憶手段に追加記憶させる手段と、前記算出した差分を状況情報として、前記追加記憶させたリビジョン番号に関連付けて前記第1記憶手段に書込む手段とを備え、前記取得手段は、前記取得要求内のアカウント情報に基づいて、前記第1記憶手段内の全ての差分情報を累積加算して状況情報を取得する手段と、前記取得要求内のアカウント情報に基づいて、前記第1記憶手段内の最新のリビジョン番号を取得する手段とを備えたことを特徴とするゲームシステム。
【0074】
[3] 上記[1]又は[2]に記載のゲームシステムにおいて、前記状況情報は、前記各クライアント装置のプラットフォームに依存しないように、前記プラットフォームを示す情報を含まないことを特徴とするゲームシステム。
【0075】
[4] ユーザの操作に応じてゲームを個別に進行可能な複数のクライアント装置の各々に通信可能なサーバ装置であって、前記ゲームの状況を示す状況情報と、前記ユーザのアカウント情報と、前記状況情報のリビジョン番号とを互いに関連付けて記憶する第1記憶手段と、前記各クライアント装置から状況情報、アカウント情報及びリビジョン番号を含む更新要求を受信する手段と、前記更新要求内のアカウント情報に基づいて、前記第1記憶手段内のリビジョン番号を読み出す手段と、前記読み出したリビジョン番号と、前記更新要求内のリビジョン番号とが一致するか否かを判定する手段と、前記判定の結果、両者が一致した場合には、前記更新要求に基づいて、前記第1記憶手段内のリビジョン番号及び状況情報を更新する更新手段と、前記判定の結果、否の場合には、前記更新要求を破棄する手段と、前記各クライアント装置からアカウント情報を含む取得要求を受信すると、当該取得要求内のアカウント情報に基づいて、前記第1記憶手段から状況情報及びリビジョン番号を取得する取得手段と、前記取得した状況情報及びリビジョン番号を前記取得要求の送信元に返信する手段とを備えたことを特徴とするサーバ装置。
【0076】
[5] 上記[4]に記載のサーバ装置において、前記状況情報は、前回のリビジョン番号に関連する状況情報との差分を示す差分情報であり、前記更新手段は、前記更新要求内のアカウント情報に基づいて、前記第1記憶手段内の全ての差分情報を累積加算した状況情報を算出する手段と、前記更新要求内の状況情報と、前記算出した状況情報との差分を算出する手段と、前記第1記憶手段内の最新のリビジョン番号を更新してなるリビジョン番号を当該第1記憶手段に追加記憶させる手段と、前記算出した差分を状況情報として、前記追加記憶させたリビジョン番号に関連付けて前記第1記憶手段に書込む手段とを備え、前記取得手段は、前記取得要求内のアカウント情報に基づいて、前記第1記憶手段内の全ての差分情報を累積加算して状況情報を取得する手段と、前記取得要求内のアカウント情報に基づいて、前記第1記憶手段内の最新のリビジョン番号を取得する手段とを備えたことを特徴とするサーバ装置。
【0077】
[6] 上記[4]又は[5]に記載のサーバ装置において、前記状況情報は、前記各クライアント装置のプラットフォームに依存しないように、前記プラットフォームを示す情報を含まないことを特徴とするサーバ装置。
【0078】
[7] サーバ装置に通信可能で、且つユーザの操作に応じてゲームを個別に進行可能なクライアント装置であって、前記ゲームの状況を示す状況情報、前記ユーザのアカウント情報及び前記状況情報のリビジョン番号が書き込まれる第2記憶手段と、前記ユーザのアカウント情報を含む取得要求の入力を受け付ける手段と、前記入力を受け付けた取得要求に含まれるアカウント情報を前記第2記憶手段に書込むと共に、当該取得要求を前記サーバ装置に送信する手段と、前記取得要求の送信に応じて、前記サーバ装置から受信した状況情報及びリビジョン番号を第2記憶手段に書込む手段と、前記第2記憶手段内の状況情報に基づいて前記ゲームの状況を復帰させた後、当該ゲームを進行させる手段と、前記ゲームの進行中、当該ゲームの状況を保存する指示の入力を受け付ける手段と、前記入力を受け付けた指示に基づいて、前記ゲームの現在の状況を示す状況情報と、前記第2記憶手段内のアカウント情報及びリビジョン番号とを含む更新要求を前記サーバ装置に送信する手段とを備え、前記サーバ装置は、前記状況情報、前記アカウント情報及び前記リビジョン番号を互いに関連付けて第1記憶手段に記憶し、前記クライアント装置又は他のクライアント装置から状況情報、アカウント情報及びリビジョン番号を含む更新要求を受信すると、当該更新要求内のアカウント情報に基づいて、前記第1記憶手段から読み出したリビジョン番号と、前記更新要求内のリビジョン番号とが一致するか否かを判定し、両者が一致した場合には、前記更新要求に基づいて前記第1記憶手段内のリビジョン番号及び状況情報を更新し、否の場合には、前記更新要求を破棄し、前記クライアント装置又は他のクライアント装置からアカウント情報を含む取得要求を受信すると、当該取得要求内のアカウント情報に基づいて前記第1記憶手段から読み出した状況情報及びリビジョン番号を前記取得要求の送信元に返信することを特徴とするクライアント装置。
【0079】
[8] ユーザの操作に応じてゲームを個別に進行可能な複数のクライアント装置の各々に通信可能で、第1記憶手段を備えたサーバ装置に用いられるプログラムであって、前記サーバ装置を、前記ゲームの状況を示す状況情報と、前記ユーザのアカウント情報と、前記状況情報のリビジョン番号とを互いに関連付けて前記第1記憶手段に書込む手段、前記各クライアント装置から状況情報、アカウント情報及びリビジョン番号を含む更新要求を受信する手段、前記更新要求内のアカウント情報に基づいて、前記第1記憶手段内のリビジョン番号を読み出す手段、前記読み出したリビジョン番号と、前記更新要求内のリビジョン番号とが一致するか否かを判定する手段、前記判定の結果、両者が一致した場合には、前記更新要求に基づいて、前記第1記憶手段内のリビジョン番号及び状況情報を更新する手段、前記判定の結果、否の場合には、前記更新要求を破棄する手段、前記各クライアント装置からアカウント情報を含む取得要求を受信すると、当該取得要求内のアカウント情報に基づいて、前記第1記憶手段内の状況情報及びリビジョン番号を読み出す手段、前記読み出した状況情報及びリビジョン番号を前記取得要求の送信元に返信する手段、として機能させるためのプログラム。
【0080】
[9] 上記[8]に記載のプログラムにおいて、前記状況情報は、前回のリビジョン番号に関連する状況情報との差分を示す差分情報であり、前記更新手段は、前記更新要求内のアカウント情報に基づいて、前記第1記憶手段内の全ての差分情報を累積加算した状況情報を算出する手段と、前記更新要求内の状況情報と、前記算出した状況情報との差分を算出する手段と、前記第1記憶手段内の最新のリビジョン番号を更新してなるリビジョン番号を当該第1記憶手段に追加記憶させる手段と、前記算出した差分を状況情報として、前記追加記憶させたリビジョン番号に関連付けて前記第1記憶手段に書込む手段とを含んでおり、前記取得手段は、前記取得要求内のアカウント情報に基づいて、前記第1記憶手段内の全ての差分情報を累積加算して状況情報を取得する手段と、前記取得要求内のアカウント情報に基づいて、前記第1記憶手段内の最新のリビジョン番号を取得する手段とを含んでいるプログラム。
【0081】
[10] 上記[8]又は[9]に記載のプログラムにおいて、前記状況情報は、前記各クライアント装置のプラットフォームに依存しないように、前記プラットフォームを示す情報を含まないプログラム。
【0082】
[11] サーバ装置に通信可能で、且つユーザの操作に応じてゲームを個別に進行可能であり、前記ゲームの状況を示す状況情報、前記ユーザのアカウント情報及び前記状況情報のリビジョン番号が書き込まれる第2記憶手段を備えたクライアント装置に用いられるプログラムであって、前記クライアント装置を、前記ユーザのアカウント情報を含む取得要求の入力を受け付ける手段、前記入力を受け付けた取得要求に含まれるアカウント情報を前記第2記憶手段に書込むと共に、当該取得要求を前記サーバ装置に送信する手段、前記取得要求の送信に応じて、前記サーバ装置から受信した状況情報及びリビジョン番号を第2記憶手段に書込む手段、前記第2記憶手段内の状況情報に基づいて前記ゲームの状況を復帰させた後、当該ゲームを進行させる手段、前記ゲームの進行中、当該ゲームの状況を保存する指示の入力を受け付ける手段、前記入力を受け付けた指示に基づいて、前記ゲームの現在の状況を示す状況情報と、前記第2記憶手段内のアカウント情報及びリビジョン番号とを含む更新要求を前記サーバ装置に送信する手段、として機能させ、前記サーバ装置は、前記状況情報、前記アカウント情報及び前記リビジョン番号を互いに関連付けて第1記憶手段に記憶し、前記クライアント装置又は他のクライアント装置から状況情報、アカウント情報及びリビジョン番号を含む更新要求を受信すると、当該更新要求内のアカウント情報に基づいて、前記第1記憶手段から読み出したリビジョン番号と、前記更新要求内のリビジョン番号とが一致するか否かを判定し、両者が一致した場合には、前記更新要求に基づいて前記第1記憶手段内のリビジョン番号及び状況情報を更新し、否の場合には、前記更新要求を破棄し、前記クライアント装置又は他のクライアント装置からアカウント情報を含む取得要求を受信すると、当該取得要求内のアカウント情報に基づいて前記第1記憶手段から読み出した状況情報及びリビジョン番号を前記取得要求の送信元に返信するプログラム。
【符号の説明】
【0083】
10…サーバ装置、11,21,31…記憶部、12…取得処理部、13…更新処理部、14,25,35…通信部、22,32…取得要求部、23,33…ゲーム進行部、24,34…更新要求部、40…コンピュータネットワーク、50…移動通信網、rq1…取得要求、rq2…更新要求。
図1
図2
図3
図4
図5
図6
図7
図8
図9