JP5933094B2 - サーバ装置、及びサーバ装置のプログラム - Google Patents

サーバ装置、及びサーバ装置のプログラム Download PDF

Info

Publication number
JP5933094B2
JP5933094B2 JP2015216689A JP2015216689A JP5933094B2 JP 5933094 B2 JP5933094 B2 JP 5933094B2 JP 2015216689 A JP2015216689 A JP 2015216689A JP 2015216689 A JP2015216689 A JP 2015216689A JP 5933094 B2 JP5933094 B2 JP 5933094B2
Authority
JP
Japan
Prior art keywords
revision number
unit
information
storage unit
game
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
JP2015216689A
Other languages
English (en)
Other versions
JP2016039953A (ja
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.)
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
Priority to JP2015216689A priority Critical patent/JP5933094B2/ja
Publication of JP2016039953A publication Critical patent/JP2016039953A/ja
Application granted granted Critical
Publication of JP5933094B2 publication Critical patent/JP5933094B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Description

本発明は、サーバ装置、及びサーバ装置のプログラに関する。
近年、ゲームプログラムを保存したサーバ装置と、サーバ装置からダウンロードした所望のゲームプログラムを実行するクライアント装置とを備えたゲームシステムが広く知られている。ここで、クライアント装置としては、プログラムを実行可能なコンピュータであればよく、例えば、デスクトップ型又はノート型のパーソナルコンピュータや、携帯電話、スマートフォン、タブレット端末等が適宜、使用されている。
ゲームプログラムとしては、トランプゲームのように短時間で終わるプログラムや、ロールプレイングゲームのように一日で終わらないプログラムのように、多数の種類がある。ユーザは、適宜、クライアント装置を操作し、クライアント装置に実行されるゲームプログラムに応じて、ゲームを楽しむ。
また、クライアント装置は、一日で終わらないゲームプログラムを実行する場合、ユーザの操作に応じて、ゲームの進行を中断する。後日、ユーザは、そのクライアント装置を操作し、中断した状態からゲームを再開する(例えば、特許文献1参照。)。
特開2010−233791号公報
以上のようなゲームシステムは、通常は何の問題もないが、本発明者の検討によれば、以下のように改良の余地がある。
すなわち、ユーザによっては、スマートフォン及びタブレット端末などの複数のクライアント装置を交互に用い、各クライアント装置間でゲームを継続的に実行したい要望がある。また、このようなユーザは、一方のクライアント装置でゲームを実行した状態のまま、他方のクライアント装置でもゲームを再開し、他方のクライアント装置でゲームを中断せずに、一方のクライアント装置でゲームを中断する等というように、各クライアント装置による並列的な実行を含んでゲームを継続的に実行したい要望がある。
しかしながら、従来のゲームシステムは、各クライアント装置間でゲームを継続的に実行することを想定していない。また特に、従来のゲームシステムは、各クライアント装置による並列的な実行を含んでゲームを継続的に実行することを全く想定していない。
よって、従来のゲームシステムは、これら想定外の要望にも対応できるようにする観点から、改良の余地がある。
本発明は上記実情を考慮してなされたもので、各クライアント装置間でゲームを継続的に実行し得るサーバ装置、及びサーバ装置のプログラを提供することを目的とする。
また、本発明の他の目的は、各クライアント装置による並列的な実行を含んでゲームを継続的に実行し得るサーバ装置、及びサーバ装置のプログラを提供することにある。
本発明の一つの局面は、ユーザの操作に応じてゲームを個別に進行可能な複数のクライアント装置の各々と通信可能なサーバ装置であって、前記ゲームの状況を示す状況情報と、前記ユーザのアカウント情報と、前記状況情報のリビジョン番号とを互いに関連付けて記憶する第1記憶部と、前記各クライアント装置から状況情報、アカウント情報及びリビジョン番号を含む更新要求を受信する更新要求受信部と、前記更新要求に含まれるアカウント情報に基づいて、前記第1記憶部に記憶されたリビジョン番号を読み出す番号読出部と、読み出した前記リビジョン番号と、前記更新要求に含まれる前記リビジョン番号とが一致するか否かを判定する判定部と、判定の結果、両者が一致した場合には、前記更新要求に基づいて、前記第1記憶部に記憶された前記リビジョン番号及び前記状況情報を更新し、両者が一致しない場合には、前記第1記憶部に記憶された前記リビジョン番号及び前記状況情報を更新しない更新部とを備えるサーバ装置である。
以上説明したように本発明によれば、各クライアント装置間でゲームを継続的に実行することができる。また、本発明によれば、各クライアント装置による並列的な実行を含んでゲームを継続的に実行することができる。
本発明の第1の実施形態に係るゲームシステムの構成を示す模式図である。 同実施形態におけるサーバ装置の記憶部を説明するための模式図である。 同実施形態における取得要求を説明するための模式図である。 同実施形態における更新要求を説明するための模式図である。 同実施形態における動作を説明するためのシーケンス図である。 同実施形態における動作を説明するためのシーケンス図である。 同実施形態における動作を説明するための模式図である。 本発明の第2の実施形態に係るサーバ装置の記憶部を説明するための模式図である。 同実施形態における動作を説明するためのシーケンス図である。
以下、本発明の各実施形態について図面を用いて説明する。なお、以下の各装置は、それぞれハードウェア構成、又はハードウェア資源とソフトウェアとの組合せ構成のいずれでも実施可能となっている。組合せ構成のソフトウェアとしては、予めネットワーク又は記憶媒体から各装置のコンピュータにインストールされ、対応する装置の機能を実現させるためのプログラムが用いられる。
<第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台以上でもよい。
ここで、サーバ装置10は、記憶部11、取得処理部12、更新処理部13及び通信部14を備えている。
記憶部11は、各部12〜14から読出/書込可能な記憶装置であり、図2に示すように、ゲームの状況を示す状況情報と、ユーザのアカウント情報と、状況情報のリビジョン番号とを互いに関連付けて記憶する。
ここで、状況情報は、ゲームを中断した時点から再開するために、例えば、ゲーム内キャラクタの位置、時間、得点、…等といった状況を示すデータを含んでいる。なお、状況情報の具体的なデータは、ゲームにより異なるので、例示した位置、時間、得点、…等といったデータに限定されない。また、状況情報は、各クライアント装置20,30のプラットフォームに依存しないように、プラットフォームを示す情報を含まないようにしてもよい。例えば、状況情報は、各クライアント装置20,30のOSに依存しないように、OSを示す情報を含まないようにしてもよい。
アカウント情報は、ユーザを識別する情報であり、この例ではユーザIDを用いている。但し、アカウント情報は、これに限らず、ユーザを識別できればよいので、ユーザID及びパスワードでもよく、ユーザIDとユーザの生体情報でもよい。
リビジョン番号は、状況情報を更新する毎に更新される番号であり、この例ではゲームIDとリビジョン値を含む番号とし、ゲームIDを固定してリビジョン値を更新することにより、リビジョン番号を更新している。なお、ゲームIDは、例えば1つのゲームしかない場合のように、何らかの手段でゲームが特定される場合には省略してもよい。また、リビジョン番号からゲームIDを省略し、ゲームIDを、リビジョン番号(リビジョン値)、状況情報及びアカウント情報と関連付けてもよい。また、リビジョン番号の更新は、この例ではリビジョン値の増加としたが、これに限らず、リビジョン値の減少としてもよい。また、リビジョン値の増加は+1ずつに限らず、+2や+10といった任意の値ずつの増加として構わない。減少の場合も同様である。また、リビジョン番号の初期値は、“1”に限らず、“0”や“100”といった任意の値として構わない。
取得処理部12は、図3に示すように、各クライアント装置20,30からアカウント情報を含む取得要求rq1を受信すると、当該取得要求rq1内のアカウント情報に基づいて、記憶部11から状況情報及びリビジョン番号を取得する取得機能と、取得した状況情報及びリビジョン番号を取得要求rq1の送信元に返信する機能とをもっている。
更新処理部13は、図4に示すように、各クライアント装置から状況情報、アカウント情報及びリビジョン番号を含む更新要求rq2を受信する機能と、更新要求rq2内のアカウント情報に基づいて、記憶部11内のリビジョン番号を読み出す機能と、当該読み出したリビジョン番号と、更新要求rq2内のリビジョン番号とが一致するか否かを判定する機能と、当該判定の結果、両者が一致した場合には、更新要求rq2に基づいて、記憶部11内のリビジョン番号及び状況情報を更新する更新機能と、判定の結果、否の場合には、更新要求rq2を破棄する機能とをもっている。
通信部14は、コンピュータネットワーク40及び移動通信網50を介して各クライアント装置20,30に通信するための通信機能部である。
続いて、第1及び第2のクライアント装置20,30の構成を説明する。各クライアント装置20,30は、前述したOSやプラットフォーム等の実装上の構成を除き、本実施形態に関係する機能ブロックが互いに同一構成であるので、ここでは第1のクライアント装置20を代表例に挙げて説明する。なお、以下の第1のクライアント装置20の説明は、参照符号の十の位を“2”から“3”にすることにより、第2のクライアント装置30の説明として読み替え可能である。
第1のクライアント装置20は、記憶部21、取得要求部22、ゲーム進行部23、更新要求部24及び通信部25を備えている。
記憶部21は、各部22〜25から読出/書込可能な記憶装置であり、状況情報、アカウント情報及びリビジョン番号が書き込まれる。
取得要求部22は、ユーザのアカウント情報を含む取得要求の入力を受け付ける機能と、入力を受け付けた取得要求に含まれるアカウント情報を記憶部21に書込むと共に、当該取得要求をサーバ装置10に送信する機能と、取得要求の送信に応じて、サーバ装置10から受信した状況情報及びリビジョン番号を記憶部21に書込む機能とをもっている。
ゲーム進行部23は、記憶部21内の状況情報に基づいてゲームの状況を復帰させた後、当該ゲームを進行させる機能をもっている。
更新要求部24は、ゲームの進行中、当該ゲームの状況を保存する指示の入力を受け付ける機能と、当該入力を受け付けた指示に基づいて、ゲームの現在の状況を示す状況情報と、記憶部21内のアカウント情報及びリビジョン番号とを含む更新要求をサーバ装置10に送信する機能とをもっている。
通信部25は、移動通信網50及びコンピュータネットワーク40を介してサーバ装置10に通信するための通信機能部である。
次に、以上のように構成されたゲームシステムの動作について図5乃至図7を用いて説明する。
いま、第1のクライアント装置20は、自宅にいるユーザに携帯されており、第2のクライアント装置30は、当該ユーザの会社に保管されているとする。また、自宅内のユーザがゲームを開始したくなったとする。
このとき、第1のクライアント装置20では、図5に示すように、ユーザの操作に応じて、取得要求部22が、ユーザのアカウント情報を含む取得要求の入力を受け付ける(ST1)。取得要求部22は、入力を受け付けた取得要求に含まれるアカウント情報を記憶部21に書込むと共に(ST2)、当該取得要求rq1をサーバ装置10に送信する(ST3)。
サーバ装置10では、取得処理部12が、取得要求rq1を受信すると(ST4)、当該取得要求rq1内のアカウント情報に基づいて、記憶部11から状況情報及びリビジョン番号“n”を取得する(ST5)。取得処理部12は、取得した状況情報及びリビジョン番号“n”を取得要求rq1の送信元の第1のクライアント装置20に返信する(ST6)。
第1のクライアント装置20では、取得要求部22が、取得要求rq1の送信に応じて、サーバ装置10から受信した状況情報及びリビジョン番号“n”を記憶部21に書込む(ST7〜ST8)。
次に、第1のクライアント装置20では、ゲーム進行部23が、記憶部21内の状況情報に基づいてゲームの状況を復帰させた後、ユーザの操作に応じて、当該ゲームを進行させる。これにより、ユーザの操作に応じて、オフラインでゲームが進行する(ST9)。
しばらくした後、自宅内のユーザがゲームを中断したくなったとする。
第1のクライアント装置20では、ユーザの操作に応じて、更新要求部24が、ゲームの進行中、当該ゲームの状況を保存する指示の入力を受け付ける(ST10)。更新要求部24は、当該入力を受け付けた指示に基づいて、ゲームの現在の状況を示す状況情報と、記憶部21内のアカウント情報及びリビジョン番号“n”とを含む更新要求rq2をサーバ装置10に送信する(ST11)。
サーバ装置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の時点でのゲームの状況を示す状況情報に更新されたとする。
ステップST15又はST16の終了後、ゲームは中断される。
以上のステップST1〜ST16の動作は、第1のクライアント装置20に代えて、第2のクライアント装置30を用いた場合でも同様である。すなわち、この後、ユーザが自宅を出て会社に出勤し、昼休みに第2のクライアント装置30を用いてゲームをする場合も同様に動作が実行される。
次に、ステップST14で否と判定される場合(リビジョン番号が不一致となる場合)について説明する。これは、一方のクライアント装置20でゲームを実行した状態のまま、他方のクライアント装置30でもゲームを再開し、他方のクライアント装置30でゲームを中断せずに、一方のクライアント装置20でゲームを中断する等というように、各クライアント装置20,30による並列的な実行を含んでゲームを継続的に実行した場合に相当する。
第1のクライアント装置20及びサーバ装置10では、図6及び図7に示すように、前述したステップST1〜ST8の動作を実行する。これにより、第1のクライアント装置20では、サーバ装置10から受信した状況情報及びリビジョン番号“n”が記憶部21に書込まれる(ST8)。このリビジョン番号“n”は、図7におけるリビジョン番号“2”であるとする。
次に、第1のクライアント装置20では、ゲーム進行部23が、記憶部21内の状況情報に基づいてゲームの状況を復帰させた後、ユーザの操作に応じて、当該ゲームを進行させる。これにより、ユーザの操作に応じて、オフラインでゲームが進行する(ST9)。
ここで、自宅内のユーザが第1のクライアント装置20でゲームを中断せずに外出し、外出先で第2のクライアント装置30によりゲームを再開したとする(ST−u1)。例えば、自宅内のユーザが第1のクライアント装置20でゲーム中に寝てしまい、朝起きて会社に出勤し、昼休みに第2のクライアント装置30によりゲームを再開するといった状況である。
第2のクライアント装置30及びサーバ装置10では、ステップST1〜ST8と同様にステップST1’〜ST8’の動作を実行する。これにより、第2のクライアント装置30では、サーバ装置10から受信した状況情報及びリビジョン番号“n”が記憶部21に書込まれる(ST8’)。
次に、第2のクライアント装置30では、ゲーム進行部33が、記憶部31内の状況情報に基づいてゲームの状況を復帰させた後、ユーザの操作に応じて、当該ゲームを進行させる。これにより、ユーザの操作に応じて、オフラインでゲームが進行する(ST9’)。
ここで、また外出先のユーザが第2のクライアント装置30でゲームを中断せずに帰宅し、自宅で第1のクライアント装置20によりゲームを継続したとする(ST−u2)。
第1のクライアント装置20及びサーバ装置10では、前述したステップST10〜ST15の動作を実行する。これにより、サーバ装置10の記憶部11は、リビジョン番号“n+1”及びステップST10の時点でのゲームの状況を示す状況情報に更新される(ST15)。このリビジョン番号“n+1”は、図7におけるリビジョン番号“3”であるとする。ステップST15の終了後、第1のクライアント装置20では、ゲームが中断される。
その後、自宅内のユーザが外出し、外出先で第2のクライアント装置30によりゲームを継続したとする(ST−u3)。
第2のクライアント装置30では、ユーザの操作に応じて、更新要求部34が、ゲームの進行中、当該ゲームの状況を保存する指示の入力を受け付ける(ST10’)。更新要求部34は、当該入力を受け付けた指示に基づいて、ゲームの現在の状況を示す状況情報と、記憶部31内のアカウント情報及びリビジョン番号“n”とを含む更新要求rq2をサーバ装置10に送信する(ST11’)。
サーバ装置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の終了後、ゲームは中断される。
次に、第1及び第2のクライアント装置20,30のいずれかがゲームを再開する場合には、リビジョン番号“n+1”(=3)及び状況情報をサーバ装置10から受信することになる。
上述したように本実施形態によれば、サーバ装置10内の状況情報を各クライアント装置20,30が取得し、この状況情報に基づいてゲームを復帰させた後、当該ゲームを進行し、中断時にはサーバ装置10内の状況情報を更新する構成により、各クライアント装置間でゲームを継続的に実行することができる。
また、サーバ装置10が状況情報及びリビジョン番号を関連付けて記憶し、更新要求内のリビジョン番号と、記憶部11内のリビジョン番号とが一致した場合には状況情報及びリビジョン番号を更新し、両リビジョン番号が不一致の場合には更新要求を破棄する構成により、各クライアント装置による並列的にゲームを実行したときでも、サーバ装置10が記憶する状況情報に(最新のリビジョン番号を優先するように)一貫性を持たせることができるので、各クライアント装置による並列的な実行を含んでゲームを継続的に実行することができる。
さらに、状況情報が各クライアント装置20,30のプラットフォームを示す情報を含まない場合には、各クライアント装置20,30のプラットフォームに依存せずに、前述した効果を得ることができる。すなわち、異なるプラットフォームの各クライアント装置20,30をユーザが用いる場合にも、前述した効果を得ることができる。
<第2の実施形態>
次に、本発明の第2の実施形態に係るゲームシステムについて、前述した図面を参照しながら説明する。
第2の実施形態は、第1の実施形態の変形例であり、図8に示すように、サーバ装置10の記憶部11内の状況情報が、前回のリビジョン番号に関連する状況情報との差分を示す差分情報となっている。
これに伴い、サーバ装置10における取得処理部12内の取得機能及び更新処理部13内の更新機能が以下のように各機能から構成されている。
すなわち、取得処理部12の取得機能は、前述した通り、各クライアント装置20,30からアカウント情報を含む取得要求rq1を受信すると、当該取得要求rq1内のアカウント情報に基づいて、記憶部11から状況情報及びリビジョン番号を取得する機能である。
但し、第2の実施形態では、この取得機能が、取得要求rq1内のアカウント情報に基づいて、記憶部11内の全ての差分情報を累積加算して状況情報を取得する機能と、取得要求内のアカウント情報に基づいて、記憶部11内の最新のリビジョン番号を取得する機能とをもっている。
また、更新処理部13の更新機能は、前述した通り、(リビジョン番号の一致/不一致の)判定の結果、両者が一致した場合には、更新要求rq2に基づいて、記憶部11内のリビジョン番号及び状況情報を更新する機能である。
但し、第2の実施形態では、この更新機能が、更新要求内のアカウント情報に基づいて、記憶部11内の全ての差分情報を累積加算した状況情報を算出する機能と、当該更新要求内の状況情報と、当該算出した状況情報との差分を算出する機能と、記憶部11内の最新のリビジョン番号を更新してなるリビジョン番号を当該記憶部11に追加記憶させる機能と、当該算出した差分を状況情報として、追加記憶させたリビジョン番号に関連付けて記憶部11に書込む機能とをもっている。
また、各クライアント装置20,30及びサーバ装置10の他の各部11,14の構成は、前述した通りである。また、取得処理部12の取得機能以外の各機能は、前述した通りである。更新処理部13の更新機能以外の各機能も前述した通りである。
以上のような構成によれば、前述したステップST5では、図9に示すように、サーバ装置10の取得処理部12が、取得要求rq1内のアカウント情報に基づいて、記憶部11内の全ての差分情報を累積加算して状況情報を取得すると共に(ST5−1)、取得要求内のアカウント情報に基づいて、記憶部11内の最新のリビジョン番号を取得する(ST5−2)。すなわち、前述したステップST5は、ステップST5−1〜ST5−2により実行される。
また、前述したステップST15では、サーバ装置10の更新処理部13が、更新要求内のアカウント情報に基づいて、記憶部11内の全ての差分情報を累積加算した状況情報を算出すると共に(ST15−1)、当該更新要求内の状況情報と、当該算出した状況情報との差分を算出する(ST15−2)。また、更新処理部13は、記憶部11内の最新のリビジョン番号を更新してなるリビジョン番号を当該記憶部11に追加記憶させると共に(ST15−3)、当該算出した差分を状況情報として、追加記憶させたリビジョン番号に関連付けて記憶部11に書込む(ST15−4)。すなわち、前述したステップST15は、ステップST15−1〜ST15−4により実行される。
なお、他のステップST1〜ST4,ST6〜ST14,ST16は、前述同様に実行される。
従って、第2の実施形態によれば、サーバ装置10の記憶部11内の状況情報が、前回のリビジョン番号に関連する状況情報との差分を示す差分情報とした構成に変形しても、第1の実施形態と同様の効果を得ることができる。
なお、上記実施形態に記載した手法は、コンピュータに実行させることのできるプログラムとして、磁気ディスク(フロッピー(登録商標)ディスク、ハードディスクなど)、光ディスク(CD−ROM、DVDなど)、光磁気ディスク(MO)、半導体メモリなどの記憶媒体に格納して頒布することもできる。
なお、本願発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態に亘る構成要素を適宜組合せてもよい。
以下に、本願の原出願の当初の特許請求の範囲に記載された発明を付記する。
[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記憶手段内の全ての差分情報を累積加算して状況情報を取得し、前記取得した状況情報を前記取得要求の送信元に返信するプログラム。
10…サーバ装置、11,21,31…記憶部、12…取得処理部、13…更新処理部、14,25,35…通信部、22,32…取得要求部、23,33…ゲーム進行部、24,34…更新要求部、40…コンピュータネットワーク、50…移動通信網、rq1…取得要求、rq2…更新要求。

Claims (6)

  1. ユーザの操作に応じてゲームを個別に進行可能な複数のクライアント装置の各々と通信可能なサーバ装置であって、
    前記ゲームの状況を示す状況情報と、前記ユーザのアカウント情報と、前記状況情報のリビジョン番号とを互いに関連付けて記憶する第1記憶部と、
    前記各クライアント装置から状況情報、アカウント情報及びリビジョン番号を含む更新要求を受信する更新要求受信部と、
    前記更新要求に含まれる前記アカウント情報に基づいて、前記第1記憶部に記憶された前記リビジョン番号を読み出す番号読出部と、
    前記番号読出部が読み出した前記リビジョン番号と、前記更新要求に含まれる前記リビジョン番号とが一致するか否かを判定する判定部と、
    判定の結果、両者が一致した場合には、前記更新要求に基づいて、前記第1記憶部に記憶された前記リビジョン番号及び前記状況情報を更新し、両者が一致しない場合には、前記第1記憶部に記憶された前記リビジョン番号及び前記状況情報を更新しない更新部とを備えることを特徴とするサーバ装置。
  2. 前記状況情報は、前回のリビジョン番号に関連する状況情報との差分を示す差分情報であり、
    前記更新部は、
    前記更新要求に含まれるアカウント情報に基づいて、前記第1記憶部に記憶された全ての差分情報を累積加算した状況情報を算出する第1算出部と、
    前記更新要求に含まれる前記状況情報と、前記第1算出部が算出した前記状況情報との差分を算出する第2算出部と、
    前記第1記憶部に記憶された最新のリビジョン番号を更新してなるリビジョン番号を当該第1記憶部に追加記憶させる追加部と、
    前記第2算出部が前記算出した差分を状況情報として、前記追加記憶させたリビジョン番号に関連付けて前記第1記憶部に書込む書込部とをさらに備える請求項1に記載のサーバ装置。
  3. ユーザの操作に応じてゲームを個別に進行可能な複数のクライアント装置の各々と通信
    可能なサーバ装置であって、
    前記ゲームの状況を示す状況情報と、前記ユーザのアカウント情報と、前記状況情報のリビジョン番号とを互いに関連付けて記憶する第1記憶部と、
    前記クライアント装置からアカウント情報を含む取得要求を受信すると、当該取得要求に含まれるアカウント情報に基づいて、前記第1記憶部から前記状況情報及び前記リビジョン番号を取得する取得部と、
    前記取得部が取得した前記状況情報及び前記リビジョン番号を、前記取得要求の送信元の前記クライアント装置に返信する返信部とを備え
    前記取得部は、
    前記取得要求に含まれるアカウント情報に基づいて、前記第1記憶部に記憶された全ての差分情報を累積加算して算出された状況情報を取得する状況情報取得部と、
    前記取得要求に含まれるアカウント情報に基づいて、前記第1記憶部に記憶された最新のリビジョン番号を取得する番号取得部とを備えることを特徴とするサーバ装置。
  4. 前記状況情報は、前記クライアント装置のプラットフォームに依存しないように、前記プラットフォームを示す情報を含まない
    請求項1〜のいずれか1項に記載のサーバ装置。
  5. ユーザの操作に応じてゲームを個別に進行可能な複数のクライアント装置の各々と通信可能なサーバ装置のプログラムであって、
    前記サーバ装置は、前記ゲームの状況を示す状況情報と、前記ユーザのアカウント情報と、前記状況情報のリビジョン番号とを互いに関連付けて記憶する第1記憶部を備えており、
    前記サーバ装置を、
    前記各クライアント装置から状況情報、アカウント情報及びリビジョン番号を含む更新要求を受信する更新要求受信部と、
    前記更新要求に含まれる前記アカウント情報に基づいて、前記第1記憶部に記憶された前記リビジョン番号を読み出す番号読出部と、
    前記番号読出部が読み出した前記リビジョン番号と、前記更新要求に含まれる前記リビジョン番号とが一致するか否かを判定する判定部と、
    判定の結果、両者が一致した場合には、前記更新要求に基づいて、前記第1記憶部に記憶された前記リビジョン番号及び前記状況情報を更新し、両者が一致しない場合には、前記第1記憶部に記憶された前記リビジョン番号及び前記状況情報を更新しない更新部として機能させることを特徴とするサーバ装置のプログラム。
  6. ユーザの操作に応じてゲームを個別に進行可能な複数のクライアント装置の各々と通信可能なサーバ装置のプログラムであって、
    前記サーバ装置は、前記ゲームの状況を示す状況情報と、前記ユーザのアカウント情報と、前記状況情報のリビジョン番号とを互いに関連付けて記憶する第1記憶部を備えており、
    前記サーバ装置を、
    前記クライアント装置からアカウント情報を含む取得要求を受信すると、当該取得要求に含まれるアカウント情報に基づいて、前記第1記憶部から前記状況情報及び前記リビジョン番号を取得する取得部と、
    前記取得部が取得した前記状況情報及び前記リビジョン番号を、前記取得要求の送信元の前記クライアント装置に返信する返信部として機能させるとともに、
    前記取得部を、
    前記取得要求に含まれるアカウント情報に基づいて、前記第1記憶部に記憶された全ての差分情報を累積加算して算出された状況情報を取得する状況情報取得部と、
    前記取得要求に含まれるアカウント情報に基づいて、前記第1記憶部に記憶された最新
    のリビジョン番号を取得する番号取得部として機能させることを特徴とするサーバ装置のプログラム。
JP2015216689A 2015-11-04 2015-11-04 サーバ装置、及びサーバ装置のプログラム Active JP5933094B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015216689A JP5933094B2 (ja) 2015-11-04 2015-11-04 サーバ装置、及びサーバ装置のプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015216689A JP5933094B2 (ja) 2015-11-04 2015-11-04 サーバ装置、及びサーバ装置のプログラム

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2013265150A Division JP5837559B2 (ja) 2013-12-24 2013-12-24 ゲームシステム、装置及びプログラム

Publications (2)

Publication Number Publication Date
JP2016039953A JP2016039953A (ja) 2016-03-24
JP5933094B2 true JP5933094B2 (ja) 2016-06-08

Family

ID=55540564

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015216689A Active JP5933094B2 (ja) 2015-11-04 2015-11-04 サーバ装置、及びサーバ装置のプログラム

Country Status (1)

Country Link
JP (1) JP5933094B2 (ja)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4371183B2 (ja) * 1999-08-04 2009-11-25 株式会社セガ ゲームシステムにおけるデータ通信方法
JP2002306854A (ja) * 2001-04-09 2002-10-22 Taito Corp 通信機器を利用したゲームシステム及びこのシステムに利用するサーバ装置
JP5037712B2 (ja) * 2004-06-29 2012-10-03 株式会社バンダイナムコゲームス コンピュータ、プログラム、及び情報記憶媒体
JP2008154620A (ja) * 2006-12-20 2008-07-10 Namco Bandai Games Inc プログラム、情報記憶媒体、ゲーム機、サーバ、及びネットワークシステム
JP5559953B2 (ja) * 2007-11-07 2014-07-23 株式会社三共 遊技用システム、サーバコンピュータ、および遊技アプリケーションプログラム

Also Published As

Publication number Publication date
JP2016039953A (ja) 2016-03-24

Similar Documents

Publication Publication Date Title
US9411872B1 (en) Management of application state data
US8843616B2 (en) Personal cloud computing with session migration
KR101643022B1 (ko) 카탈로그-기반 소프트웨어 컴포넌트 관리
US10127294B2 (en) Idempotency of application state data
US9288245B2 (en) Apparatus and methods of accessing content
US20130332846A1 (en) Extensible application state preservation architecture
JP2013513160A (ja) Webアプリケーションとブラウザーの外部のプロセスとの間の通信チャンネル
US20190138513A1 (en) Automatic lock removal method for scalable synchronization in dynamic data structures
JP2009125266A (ja) 同期制御方法及びゲームシステム
JP5449473B2 (ja) ゲームシステム、装置及びプログラム
JP5933094B2 (ja) サーバ装置、及びサーバ装置のプログラム
US11838207B2 (en) Systems for session-based routing
JP5837559B2 (ja) ゲームシステム、装置及びプログラム
US10798147B2 (en) Constraint based controlled seeding
JP2016033790A (ja) 画面転送サーバ装置、および画面転送方法
JP2017111581A (ja) 情報処理システム、制御方法
KR101447850B1 (ko) 실시간 대전 게임을 위한 게임 제공 방법 및 그 시스템
JP2011181032A (ja) サーバ装置、情報処理方法、及び、プログラム
JP2007086924A (ja) ソフトウェア配布システム、サーバ、サーバの制御方法及びプログラム
US8898125B2 (en) Method and apparatus for awarding trophies

Legal Events

Date Code Title Description
A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20151228

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160126

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160325

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160428

R150 Certificate of patent or registration of utility model

Ref document number: 5933094

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250