説明

ゲーム装置および情報処理装置

【課題】ゲームソフトウェアの実行に必要とされるときにOSをダウンロードする仕組みを提供する。
【解決手段】ゲーム装置10において、バージョンファイル取得部132は、ネットワーク18を介して、起動したゲームソフトウェアの実行に推奨されるOSを特定するバージョン情報を含むバージョンファイルを取得する。OSバージョン比較部142は、実行中のOSの第1バージョン情報と、起動したゲームソフトウェアの実行に推奨されるOSを特定する第2バージョン情報とを比較し、第2バージョン情報が第1バージョン情報よりも新しければ、OS取得部134が、最新版のOSをダウンロードして、ハードディスクドライブ34に格納する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ゲーム装置などの情報処理装置で実行される情報処理技術に関する。
【背景技術】
【0002】
一般にゲームソフトウェアは、光ディスクや光磁気ディスク、ブルーレイディスクなどのROM媒体の形態で流通、販売される。ROM媒体に記録されたゲームソフトウェアは書き換えることができないため、ゲームソフトウェアの一部のバグを修正したり、機能を変更または追加するためには、パッチを当てることで対応する。特許文献1は、記録媒体に記録されたバージョン情報と、パッチファイルに含まれるバージョン情報を比較して、より新しいバージョン情報が付与されている起動ファイルをメモリにロードして、ゲーム起動処理を実行するゲーム装置を開示している。
【特許文献1】US2008/0141018号公開公報
【発明の開示】
【発明が解決しようとする課題】
【0003】
ゲーム装置に電源が投入されると、まずオペレーティングシステム(以下、単に「OS(Operating System)」と呼ぶ)が起動されて、ゲームソフトウェアの実行環境が整えられる。バグを修正したり、機能を拡張するなどの理由により、OSの更新はかなり高い頻度で行われる。OSが更新されると、パッチファイルも、更新されたOS上で動作するように作成されることが多い。
【0004】
更新されたOSはそれ以前のOSの機能を包含するため、ゲーム装置は、常に最新版のOSをインストールしておくことで、パッチファイルを使用可能な環境を作り出せる。しかしながら、パッチファイルはゲームソフトウェアに適用されるものであるため、ゲームソフトウェアのパッチファイルが存在しなければ、通常はゲーム装置に最新版のOSをインストールする必要はない。OSのデータ量は比較的大きいため、OSが更新されるたびに必要性の有無にかかわらずゲーム装置にダウンロードすることは、時間およびコストの観点から好ましくない。そのため、ゲーム装置がゲームソフトウェアの実行に必要とされるときに、効率よくOSをダウンロードする仕組みの構築が望まれている。
【0005】
そこで本発明は、好適にファイルをダウンロードする技術を提供することを目的とする。
【課題を解決するための手段】
【0006】
上記課題を解決するために、本発明のある態様のゲーム装置は、第1バージョン情報で特定されるオペレーティングシステムを実行するオペレーティングシステム実行部と、ゲームソフトウェアを起動するアプリケーション実行部と、ネットワークを介して、起動したゲームソフトウェアの実行に推奨されるオペレーティングシステムを特定する第2バージョン情報を含むバージョンファイルを取得するバージョンファイル取得部と、第1バージョン情報と、第2バージョン情報とを比較する第1バージョン比較部と、第2バージョン情報が、第1バージョン情報よりも新しいことを示す場合に、ネットワークを介して、第2バージョン情報または第2バージョン情報よりも新しいバージョン情報で特定されるオペレーティングシステムを取得するオペレーティングシステム取得部とを備える。
【0007】
また本発明の別の態様の情報処理装置は、第1バージョン情報で特定されるオペレーティングシステムを実行するオペレーティングシステム実行部と、アプリケーションソフトウェアを起動するアプリケーション実行部と、ネットワークを介して、起動したアプリケーションソフトウェアの実行に推奨されるオペレーティングシステムを特定する第2バージョン情報を含むバージョンファイルを取得するバージョンファイル取得部と、第1バージョン情報と、第2バージョン情報とを比較する第1バージョン比較部と、第2バージョン情報が、第1バージョン情報よりも新しいことを示す場合に、ネットワークを介して、第2バージョン情報または第2バージョン情報よりも新しいバージョン情報で特定されるオペレーティングシステムを取得するオペレーティングシステム取得部とを備える。
【0008】
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。
【発明の効果】
【0009】
本発明の情報処理技術によると、好適にファイルをダウンロードする技術を提供することが可能となる。
【発明を実施するための最良の形態】
【0010】
図1は、本発明の実施例にかかるファイル取得システム1を示す。ファイル取得システム1は、ゲームソフトウェアの好適な実行環境を提供するゲームシステムにおいて構築され、ユーザ端末におけるゲームソフトウェアの実行に推奨されるOSの取得処理、およびゲームソフトウェアに適用するパッチファイルの取得処理を支援する。
【0011】
ファイル取得システム1は、ユーザ端末であるゲーム装置10と、ゲームソフトウェアに適用するパッチファイルのバージョンを管理する管理サーバ12と、最新版のOSを提供する更新サーバ14と、パッチファイルを提供するファイル提供サーバ16a、16b、16c(以下、総称して「ファイル提供サーバ16」とよぶ)とを備える。ゲーム装置10、管理サーバ12、更新サーバ14およびファイル提供サーバ16は、インターネットなどのネットワーク18を介して通信可能に接続される。
【0012】
管理サーバ12は、ゲームシステムの運営主体により管理され、ゲームソフトウェアごとに、パッチファイルのバージョン情報と、パッチファイルを使用するために推奨されるOSを特定するバージョン情報と、パッチファイルを格納する位置を示すアドレス情報とを対応づけたパッチ情報を含むバージョンファイルを保持している。ゲームソフトウェアに対して複数のパッチファイルが作成されている場合、バージョンファイルには、それぞれのパッチファイルに関するパッチ情報が含められる。なおバージョンファイルには、パッチファイルの有無とは関係なく、ゲームソフトウェアの好適な実行のために推奨されるOSを特定するバージョン情報も含まれる。パッチ情報に含まれるOSのバージョン情報は、ゲームメーカにより指定され、ゲームソフトウェアの好適な実行に必要なOSのバージョン情報は、ゲームシステムの運営主体により指定される。
【0013】
管理サーバ12は、たとえばゲームソフトウェアの識別情報(以下、「タイトルID」とよぶ)をディレクトリ名および/またはファイル名に用いたアドレス(URL)にバージョンファイルを格納する。ゲームソフトウェアのタイトルIDをディレクトリ名および/またはファイル名に用いるアドレス生成手法は、管理サーバ12およびゲーム装置10の間で共通化されている。したがってゲーム装置10は、起動するゲームソフトウェアのタイトルIDを用いてアドレスを生成して管理サーバ12にアクセスすることで、ゲームソフトウェアのバージョンファイルを取得することが可能である。
【0014】
更新サーバ14は、ゲームシステムの運営主体により管理され、最新版のOSを格納している。ゲームシステムの運営主体が最新版のOSを生成すると、格納されていたOSは、最新版のOSに置き換えられる。したがって更新サーバ14は、常に最新版のOSをゲーム装置10に提供できる。
【0015】
本実施例においてOSは、ゲーム装置10にインストールされて実行され、アプリケーションソフトウェアを動作させるためのインタフェース(APIおよびABI)を形成する。OSは、ゲーム装置10上のプロセス管理機能や、メモリ管理機能、ネットワーク接続機能およびファイルシステムなどを有し、またグラフィカルユーザインタフェース(GUI)やデバイスドライバを含む。ゲーム装置10は、インストールしたOSを実行することで、アプリケーションソフトウェアを動作させることが可能となり、最新版のOSをダウンロードすることで、OSの機能を拡張できる。
【0016】
更新サーバ14は、最新版のOSのバージョン情報および最新版のOSが格納されているアドレス情報を含んだOSの情報ファイルを格納している。ゲーム装置10は、OS情報ファイルの取得アドレスを保持している。ゲーム装置10は電源を投入されると、ネットワーク18に接続していれば、OS情報ファイルをダウンロードする。これにより、ゲーム装置10は、ネットワーク18への最初の接続時点で、OSの最新版のバージョン情報およびOSのアドレス情報を取得できる。
【0017】
ファイル提供サーバ16は、ゲームメーカにより管理され、ゲームソフトウェアに適用するパッチファイルを保持している。パッチファイルは、ROM媒体中のプログラムのバグを修正したり、機能を変更または追加などするために使用される。ゲームメーカは、ゲームソフトウェアのパッチファイルを生成すると、ファイル提供サーバ16に格納して、ゲーム装置10が、パッチファイルをファイル提供サーバ16からダウンロードできるようにする。ゲームメーカは、生成したパッチファイルをダウンロード可能な状態にすると、ゲームシステムの運営主体に対して、タイトルID、パッチファイルのバージョン情報、パッチファイルを使用するために必要なOSを特定するバージョン情報、パッチファイルを格納する位置を示すアドレス情報などを含むパッチ情報を通知する。この通知は、オンラインで行われてもオフラインで行われてもよい。システム運営主体は、パッチ情報を受け取ると、パッチ情報の内容をバージョンファイルに追加して、バージョンファイルを更新する。
【0018】
本実施例のファイル取得システム1において、ゲーム装置10は電源を投入されると、OSを起動するとともに、OSの情報ファイルのアドレスに接続して、更新サーバ14からOSの情報ファイルを取得する。このときゲーム装置10は、起動したOSのバージョン情報と、情報ファイルに含まれるバージョン情報とを比較して、起動中のOSよりもバージョンの新しいOSがネットワーク18上からダウンロード可能であるか判定する。起動中のOSよりもバージョンの新しいOSがネットワーク18上でダウンロード可能である場合、ゲーム装置10は、ユーザに対して最新版のOSをダウンロードするか否かを問い合わせる確認画面を表示機器に表示させる。このとき、ユーザは最新版のOSをダウンロードしない旨の指示をゲーム装置10に入力し、ゲーム装置10は、OSをダウンロードしない。本実施例では、その後、ゲーム装置10が、アプリケーションソフトウェアの実行に必要な場合にOSをダウンロードする場合について説明する。
【0019】
次にゲーム装置10はゲームソフトウェアを起動すると、起動処理を行いながら、同時にネットワーク18を介して管理サーバ12にアクセスし、起動したゲームソフトウェアのバージョンファイルを取得する。ゲーム装置10は、バージョンファイルに、保有するゲームソフトウェアおよびパッチファイルのバージョン情報よりも、パッチファイルの新しいバージョン情報が含まれるか判断する。バージョンファイルに、保有していないパッチファイルのバージョン情報が含まれている場合、ゲーム装置10は、そのバージョンのパッチファイルを使用するために必要なOSのバージョン情報を取得し、実行中のOSのバージョン情報と比較する。パッチファイルを使用するために必要なOSのバージョン情報が実行中のOSのバージョン情報よりも新しいことを示す場合、ゲーム装置10は、更新サーバ14にアクセスして、最新版のOSをダウンロードし、ダウンロードしたOSを再起動する。
【0020】
ゲーム装置10は、最新版のOSを再起動した後、既述したプロセスを再度実行する。すなわち、ゲーム装置10は再度ゲームソフトウェアを起動し、起動処理を行いながら、同時にネットワーク18を介して管理サーバ12にアクセスし、起動したゲームソフトウェアのバージョンファイルを取得する。ゲーム装置10は、バージョンファイルに、保有するゲームソフトウェアおよびパッチファイルのバージョン情報よりも、パッチファイルの新しいバージョン情報が含まれるか判断する。バージョンファイルに、保有していないパッチファイルのバージョン情報が含まれているため、そのバージョンのパッチファイルを使用するために必要なOSのバージョン情報を取得し、実行中のOSのバージョン情報と比較する。
【0021】
このときゲーム装置10は、最新版のOSを起動しているため、実行中のOSのバージョン情報は、必ずパッチファイルを使用するために必要なOSのバージョン情報と同じか、それよりも新しい。したがってゲーム装置10は、OSをダウンロードする必要がないことを判定する。ゲーム装置10は、ファイル提供サーバ16にアクセスし、保有していないパッチファイルをダウンロードして、ゲームソフトウェアを再起動する。
【0022】
本実施例に示す技術は、ゲーム装置10に限らず、会計ソフトやCADソフトなどのプログラムが記録されたROM媒体を装着される情報処理装置においても実現できる。
【0023】
図2は、ゲーム装置10の機能ブロック図を示す。ゲーム装置10は、電源ボタン20、LED22、システムコントローラ24、デバイスコントローラ30、メディアドライブ32、ハードディスクドライブ34、スイッチ36、無線インタフェース38、メインコントローラ100、メインメモリ102および出力処理部200を有して構成される。
【0024】
電源ボタン20は、ユーザからの操作入力が行われる入力部であって、ゲーム装置10への電源供給をオンまたはオフするために操作される。電源ボタン20は押下ボタンであってよく、押下されることで電源のオンまたはオフが制御されてもよい。なお電源ボタン20は、タッチセンサなど、ユーザが電源のオンオフを行える他の構造をとってもよい。LED22は、電源のオンまたはオフの状態を点灯表示する。システムコントローラ24は、電源ボタン20の押下状態または非押下状態を検出し、電源オフの状態から押下状態への状態遷移を検出すると、メインコントローラ100を起動し、またLED22を点灯制御する。ゲーム装置10に電源ケーブルが差し込まれている場合、システムコントローラ24は、電源オフの状態であってもスタンバイモードを維持して、電源ボタン20の押下を監視する。
【0025】
デバイスコントローラ30は、サウスブリッジのようにデバイス間の情報の受け渡しを実行するLSI(Large-Scale Integrated Circuit)として構成される。図示のように、デバイスコントローラ30には、システムコントローラ24、メディアドライブ32、ハードディスクドライブ34、スイッチ36およびメインコントローラ100などのデバイスが接続される。デバイスコントローラ30は、それぞれのデバイスの電気特性の違いやデータ転送速度の差を吸収し、データ転送のタイミングを制御する。
【0026】
メディアドライブ32は、ゲームソフトウェアを記録したROM媒体50を装着して駆動し、ROM媒体50からゲームソフトウェアを読み出すドライブ装置である。ROM媒体50は、光ディスクや光磁気ディスク、ブルーレイディスクなどの読出専用の記録メディアである。ゲームソフトウェアは、ゲームアプリケーションを実行させるメインプログラムと、メインプログラムを起動するための起動ファイルと、ゲームキャラクタやシナリオなどのゲームデータ、ゲームソフトウェアのタイトルID、ゲームソフトウェアのバージョン情報、ゲームソフトウェアの実行に必要なOSのバージョン情報などを含んでいる。
【0027】
メインプログラムは、アプリケーションの実行に必要なプログラムであり、メインプログラムを走らせることで、ゲームアプリケーションが進行する。起動ファイルは、メインプログラムを起動するためのプログラムであり、起動ファイルを実行すると、メインプログラムが呼び出されて実行される。
【0028】
ゲームソフトウェアのバージョン情報および上記したパッチファイルのバージョン情報は、それぞれの生成順を特定できるものであればよい。たとえばゲームソフトウェアのバージョン情報を「1」、最初に作成されたパッチファイルのバージョン情報を「2」、その次に作成されたパッチファイルのバージョン情報を「3」とするように、新しく作成されたパッチファイルには、それ以前に作成されたパッチファイルおよびゲームソフトウェアよりも大きな数字がバージョン情報として付与されてもよい。また単純にゲームソフトウェアの生成年月日、パッチファイルの生成年月日を特定する情報がバージョン情報として付与されてもよい。なおOSのバージョン情報も同様であり、OSの生成順を特定できる情報が付与されればよい。
【0029】
ハードディスクドライブ34は、内蔵ハードディスクを駆動し、磁気ヘッドを用いてデータの書込/読出を行う補助記憶装置である。スイッチ36は、イーサネットスイッチ(イーサネットは登録商標)であって、外部の機器と有線または無線で接続して、情報の送受信を行うデバイスである。本実施例では、スイッチ36にケーブルが差し込まれ、ネットワーク18と通信可能に接続している。さらにスイッチ36は無線インタフェース38に接続し、無線インタフェース38は、Bluetooth(登録商標)プロトコルやIEEE802.11プロトコルなどの通信プロトコルで無線通信機能をもつ入力装置40と接続する。入力装置40は、ユーザからの操作入力が行われる入力手段である。
【0030】
メインコントローラ100は、マルチコアCPUを備え、1つのCPUの中に1つの汎用的なプロセッサコアと、複数のシンプルなプロセッサコアを有する。汎用プロセッサコアをPPU(Power Processing Unit)と呼び、残りのプロセッサコアをSPU(Synergistic-Processing Unit)と呼ぶ。
【0031】
メインコントローラ100は、主記憶装置であるメインメモリ102に接続するメモリコントローラを備える。PPUはレジスタを有し、演算実行主体としてメインプロセッサを備えて、各アプリケーションにおける基本処理単位としてのタスクを各SPUに効率的に割り当てる。なお、PPU自身がタスクを実行してもよい。SPUはレジスタを有し、演算実行主体としてのサブプロセッサとローカルな記憶領域としてのローカルメモリ(専用RAM)を備える。SPUは制御ユニットとして専用のDMA(Direct Memory Access)コントローラをもち、メインメモリ102とローカルメモリの間のデータ転送を行うことで、データを高速にストリーム処理でき、また出力処理部200に内蔵されるフレームメモリとローカルメモリの間で高速なデータ転送を実現できる。
【0032】
出力処理部200は、表示機器60に接続されて、アプリケーションの処理結果である映像信号および音声信号を出力する。出力処理部200は、画像処理機能を実現するGPU(Graphics Processing Unit)を備える。GPUは、HDMI(High Definition Multimedia Interface)を採用し、映像信号をデジタル出力できる。
【0033】
図3は、ゲーム装置10におけるファイル取得処理を実行するための機能ブロックを示す。図3においては、デバイスコントローラ30などのインタフェースは省略している。メインコントローラ100は、実行処理部110および更新処理部120を備え、実行処理部110は、OSを実行するOS実行部112と、ゲームアプリケーションを実行するアプリケーション実行部114とを有する。更新処理部120は、取得部130および比較部140を備える。取得部130は、バージョンファイル取得部132、OS取得部134、パッチファイル取得部136およびOS情報ファイル取得部138を有し、比較部140は、OSバージョン比較部142およびパッチバージョン比較部144を有する。
【0034】
図3において、さまざまな処理を行う機能ブロックとして記載される各要素は、ハードウェア的には、CPU(Central Processing Unit)、メモリ、その他のLSIで構成することができ、ソフトウェア的には、メモリにロードされたプログラムなどによって実現される。既述したように、メインコントローラ100には1つのPPUと複数のSPUとが設けられており、PPUおよびSPUがそれぞれ単独または協同して、各機能ブロックを構成できる。したがって、これらの機能ブロックがハードウェアのみ、ソフトウェアのみ、またはそれらの組合せによっていろいろな形で実現できることは当業者には理解されるところであり、いずれかに限定されるものではない。
【0035】
電源が投入されると、OS実行部112が、ハードディスクドライブ34に格納されたOS170を起動する。ここで、OS170のバージョン情報は「1.00」であるものとする。起動されたOS170は、ハードディスクドライブ34に格納されているファイル取得プログラムを起動する。ファイル取得プログラムにより実現される機能は、図4において更新処理部120として示される。
【0036】
スイッチ36がネットワーク18に接続されていると、OS情報ファイル取得部138が、保持しているOS情報ファイルのアドレスをもとにネットワーク18を介して更新サーバ14にアクセスし、OS情報ファイルをダウンロードして取得する。OS情報ファイルには、OSの最新のバージョン情報と、最新版OSのアドレス情報とが含まれる。
【0037】
OSバージョン比較部142が、OS情報ファイルに含まれる最新版OSのバージョン情報と、実行しているOSのバージョン情報とを比較する。ここで最新版OSのバージョン情報が「1.01」以上である場合、OSバージョン比較部142は、実行中のOS170よりも新しいバージョンのOSをダウンロード可能であることを判定する。この比較結果は、OS取得部134に供給される。
【0038】
OS取得部134は、比較結果を受けると、ユーザに対してOSをダウンロードするか否かを問い合わせる確認画面を表示機器60に表示させる。このとき、ユーザが入力装置40から最新版OSをダウンロードする旨の指示を入力すると、OS取得部134は更新サーバ14にアクセスして、最新版のOSを取得する。
【0039】
しかしながら、通常、ユーザは、最新版のOSをダウンロードする必要があるか判断することはできない。OSは高い頻度で更新されるため、OSが更新されるたびに、それを取得してインストールしていると、その都度、時間とコストがかかることになり、ユーザにとっては効率的な作業ではない。そこで、以下では、ネットワーク18に最初に接続したときに表示機器60に提示される確認画面において、ユーザが、最新版OSをダウンロードしない旨の指示を入力し、アプリケーションソフトウェアの実行に必要となったときに最新版OSをダウンロードする処理について説明する。
【0040】
メディアドライブ32にROM媒体50が装着されると、メディアドライブ32は、ROM媒体50からゲームソフトウェア150をハードディスクドライブ34に読み出す。本実施例のゲーム装置10は、ゲームソフトウェアをROM媒体50から実行するのではなく、ハードディスクドライブ34に読み出して実行する。
【0041】
アプリケーション実行部114は、入力装置40から供給されるゲームの実行指示を受けると、ハードディスクドライブ34に読み出されたゲームソフトウェア150を起動する。ゲームソフトウェア150のバージョン情報は「1」であり、タイトルIDは「ABCD」であるとする。
【0042】
ゲームソフトウェア150が起動されると、バージョンファイル取得部132が、予め定められたアドレス生成手法により、ゲームソフトウェア150のバージョンファイルを取得するためのアドレスを生成する。タイトルIDを「ABCD」とするゲームソフトウェア150のアドレスは、アドレス生成手法により以下のように設定される。
http://www.***.com/ABCD/ABCD.XYZ
「www.***.com」は管理サーバ12を特定し、「ABCD/ABCD.XYZ」は、管理サーバ12のディレクトリ(ABCD)に含まれるファイル名(ABCD.XYZ)を特定する。すなわち、このアドレス生成手法では、ゲームソフトウェアのタイトルIDを、ディレクトリ名およびファイル名に利用する。したがって管理サーバ12の管理者が、ゲームソフトウェアごとに、タイトルIDをディレクトリとし、タイトルIDをファイル名としてバージョンファイルを格納することで、ゲーム装置10が、起動するゲームソフトウェアのバージョンファイルを取得できるようになる。
【0043】
バージョンファイル取得部132は、生成したアドレスをもとにネットワーク18を介して管理サーバ12にアクセスし、ゲームソフトウェア150のバージョンファイルをダウンロードして取得する。
【0044】
図4は、バージョンファイルの一例を示す。図4は、バージョンファイルに含まれる情報を簡略的に示しているが、バージョンファイルはXMLの形式で記述されてもよい。バージョンファイルのファイル名は、「ABCD.XYZ」である。バージョンファイルは、タイトル情報176、バージョン情報178およびパッチ情報180a、180b、180cを含む。
【0045】
タイトル情報176は、タイトルIDを特定する情報であり、この例ではタイトルIDが「ABCD」である。バージョン情報178は、起動したゲームソフトウェア150の実行に推奨されるOSを特定する情報であり、この例では、バージョン情報が「1.01」に設定されている。
【0046】
バージョン情報178は、ゲームシステムの運営主体により設定される。たとえばバージョン1.01より前のバージョンのOSにバグなどの不具合があった場合、ゲームソフトウェアが所期のように動作しないことがある。このようなバグは、ユーザがゲームを行うことで発見されて、ゲームシステムの運営主体に報告され、運営主体がOSを修正する。
【0047】
なおOSにバグがあっても、そのバグがゲームソフトウェアの動作に影響するかどうかはゲームソフトウェアに依存し、必ずゲームソフトウェアの動作が不調になるとは限らない。バグによって動作不調とならないゲームソフトウェアに対しては、基本的に新しいOSをインストールさせる必要はなく、そのような場合にまでOSをゲーム装置にダウンロードさせるのは時間とコストの無駄である。そこでバージョンファイルに、起動したゲームソフトウェアの実行に推奨されるOSを特定するバージョン情報178を設定し、ゲーム装置10はバージョン情報178を参照することで、起動しているOS170でゲームソフトウェア150が好適に動作するか判断する。
【0048】
実施例においては、実行しているOS170のバージョン情報が「1.00」であり、バージョンファイルに含まれるバージョン情報178が「1.01」に設定されているため、ゲーム装置10は、OSをダウンロードすることが好ましいことを認識できる。一方で、仮にバージョン情報178が「1.00」であれば、ゲーム装置10は、実行しているOS170でゲームソフトウェアが順調に動作することを認識できるため、ゲームソフトウェアの実行に際して敢えてOSをダウンロードしなくてもよいことを認識できる。
【0049】
バージョンファイルには、3つのパッチ情報180a、180b、180cが含まれている。パッチ情報180は、ゲームソフトウェアのパッチファイルのバージョン情報と、パッチファイルを使用するために推奨されるOSを特定するバージョン情報と、パッチファイルを格納する位置を示すアドレス情報とを対応づけた情報である。図4において、パッチファイルのバージョン情報は「パッチバージョン」として、推奨されるOSを特定するバージョン情報は「OSバージョン」として、アドレス情報は「パッチ取得URL」として、それぞれ示されている。ゲーム装置10は、パッチ取得URLに接続することで、パッチファイルを取得できる。
【0050】
パッチ情報180a、180b、180cは、それぞれ個々のパッチファイルに関する情報であり、この例ではタイトルIDをABCDとするゲームソフトウェア150に対して、3つのパッチファイルが存在することが示されている。パッチ情報180a、180b、180cは、生成日が古いものから順に上から記述されている。
【0051】
パッチ情報180aは、パッチファイルのバージョン情報が「2」、パッチファイルを使用するために必要なOSのバージョン情報が「1.00」であることを示す。パッチ情報180bは、パッチファイルのバージョン情報が「3」、パッチファイルを使用するために必要なOSのバージョン情報が「1.00」であることを示す。パッチ情報180cは、パッチファイルのバージョン情報が「4」、パッチファイルを使用するために必要なOSのバージョン情報が「1.01」であることを示す。この例では、バージョン2、3のパッチファイルを使用するためには、バージョン1.00のOSで対応できたが、バージョン4のパッチファイルを使用するためには、バージョン1.01のOSでないと好適に対応できないことが示される。
【0052】
<例1>
パッチファイルのダウンロードに関係なくOSをダウンロードする例1を示す。
図3に戻り、バージョンファイル取得部132が、ゲームソフトウェア150のバージョンファイルを取得すると、OSバージョン比較部142が、ゲームソフトウェア150の実行に推奨されるOSのバージョン情報178と、実行しているOSのバージョン情報とを比較する。ここでゲームソフトウェア150の実行に推奨されるOSのバージョン情報は「1.01」であり、また実行中のOSのバージョン情報は「1.00」であるため、OSバージョン比較部142は、ゲームソフトウェア150の実行に推奨されるOSのバージョン情報が、実行中のOSのバージョン情報よりも新しいことを示していることを判定する。この比較結果は、OS取得部134に供給される。
【0053】
OS取得部134は、比較結果を受けると、OS情報ファイルに含まれるアドレス情報を用いて更新サーバ14にアクセスして、バージョン情報1.01またはそれよりも新しいバージョン情報で特定されるOSを取得する。既述したように更新サーバ14は最新版のOSのみをダウンロード可能な状態で保持しているため、OS取得部134は、最新版のOSを取得する。OS取得部134は、取得したOSをハードディスクドライブ34に格納する。
【0054】
OS取得部134は、更新サーバ14にアクセスする前に、ユーザに対してOSをダウンロードするか否かを問い合わせる確認画面を表示機器60に表示させてもよい。この場合、ユーザによりOSをダウンロードする旨の指示が入力装置40から入力されたときに、OS取得部134は、更新サーバ14にアクセスして、最新版のOSを取得する。
【0055】
なお、ゲームソフトウェア150の実行に推奨されるOSのバージョン情報が、実行中のOSのバージョン情報と同じか、それよりも古い場合、OSバージョン比較部142は、実行しているOSで、ゲームソフトウェア150が好適に動作することを判定する。したがってOS取得部134は、更新サーバ14にアクセスせず、OSを取得しない。
【0056】
<例2>
パッチファイルのダウンロードをすることを前提としてOSをダウンロードする例2を示す。
バージョンファイル取得部132が、ゲームソフトウェア150のバージョンファイルを取得すると、OSバージョン比較部142が、パッチ情報180a、180b、180cに含まれるOSのバージョン情報と、実行しているOSのバージョン情報とを比較する。ここでバージョン2、3のパッチファイルの使用に必要なOSのバージョン情報は「1.00」であり、バージョン4のパッチファイルの使用に必要なOSのバージョン情報は「1.01」である。実行中のOSのバージョン情報は「1.00」であるため、OSバージョン比較部142は、バージョン4のパッチファイルを使用するために必要なOSのバージョン情報が、実行中のOSのバージョン情報よりも新しいことを示していることを判定する。この比較結果は、OS取得部134に供給される。
【0057】
OS取得部134は、比較結果を受けると、OS情報ファイルに含まれるアドレス情報を用いて更新サーバ14にアクセスして、バージョン情報1.01またはそれよりも新しいバージョン情報で特定されるOSを取得する。更新サーバ14は最新版のOSのみをダウンロード可能な状態で保持しているため、OS取得部134は、最新版のOSを取得する。OS取得部134は、取得したOSをハードディスクドライブ34に格納する。
【0058】
OS取得部134は、更新サーバ14にアクセスする前に、ユーザに対してOSをダウンロードするか否かを問い合わせる確認画面を表示機器60に表示させてもよい。この場合、ユーザによりOSをダウンロードする旨の指示が入力装置40から入力されたときに、OS取得部134は、更新サーバ14にアクセスして、最新版のOSを取得する。
【0059】
<例3>
例1と例2とを統合して、ゲームソフトウェアの実行に好適なOSをダウンロードする例3を示す。
バージョンファイル取得部132が、ゲームソフトウェア150のバージョンファイルを取得すると、OSバージョン比較部142が、バージョン情報178、パッチ情報180a、180b、180cに含まれるOSのバージョン情報と、実行しているOSのバージョン情報とを比較する。ここでバージョン情報178は「1.01」であり、バージョン2、3のパッチファイルの使用に必要なOSのバージョン情報は「1.00」であり、バージョン4のパッチファイルの使用に必要なOSのバージョン情報は「1.01」である。実行中のOSのバージョン情報は「1.00」であるため、OSバージョン比較部142は、ゲームソフトウェア150の実行に推奨されるOSのバージョン情報、およびバージョン4のパッチファイルを使用するために必要なOSのバージョン情報が、実行中のOSのバージョン情報よりも新しいことを示していることを判定する。つまり例3では、バージョンファイルに含まれるOSのバージョン情報の中で最新のものと、実行中のOSのバージョン情報とが比較される。比較結果は、OS取得部134に供給され、OS取得部134は、最新版のOSを取得する。OS取得部134は、取得したOSをハードディスクドライブ34に格納する。
【0060】
OS取得部134は、更新サーバ14にアクセスする前に、ユーザに対してOSをダウンロードするか否かを問い合わせる確認画面を表示機器60に表示させてもよい。この場合、ユーザによりOSをダウンロードする旨の指示が入力装置40から入力されたときに、OS取得部134は、更新サーバ14にアクセスして、最新版のOSを取得する。
【0061】
OS取得部134が最新版のOSをハードディスクドライブ34に格納すると、OS実行部112が実行中のOS170を終了して、取得した最新版のOSを起動する。最新版のOSで再起動することで、ゲーム装置10は、ゲームソフトウェア150を好適に実行でき、またパッチファイルをダウンロードして使用できる環境を構築する。
【0062】
起動されたOS170は、ハードディスクドライブ34に格納されているファイル取得プログラムを起動する。OS情報ファイル取得部138は、保持しているOS情報ファイルのアドレスをもとにネットワーク18を介して更新サーバ14にアクセスし、OS情報ファイルをダウンロードして取得する。OSバージョン比較部142が、OS情報ファイルに含まれる最新版OSのバージョン情報と、実行しているOSのバージョン情報とを比較する。ここで実行しているOSは最新版であるため、OSバージョン比較部142は、更新サーバ14からOSをダウンロードする必要がないことを判定する。
【0063】
アプリケーション実行部114は、入力装置40から供給されるゲームの実行指示を受けると、ハードディスクドライブ34に読み出されたゲームソフトウェア150を起動する。ゲームソフトウェア150が起動されると、バージョンファイル取得部132が、予め定められたアドレス生成手法により、ゲームソフトウェア150のバージョンファイルを取得するためのアドレスを生成する。バージョンファイル取得部132は、生成したアドレスをもとにネットワーク18を介して管理サーバ12にアクセスし、ゲームソフトウェア150のバージョンファイル(ABCD.XYZ)をダウンロードして取得する。
【0064】
以下、上記した例3をもとに、パッチファイルの取得処理について説明する。
バージョンファイル取得部132が、ゲームソフトウェア150のバージョンファイルを取得すると、OSバージョン比較部142が、バージョン情報178、パッチ情報180a、180b、180cに含まれるOSのバージョン情報と、実行しているOSのバージョン情報とを比較する。ここでバージョン情報178は「1.01」であり、バージョン2、3のパッチファイルの使用に必要なOSのバージョン情報は「1.00」であり、バージョン4のパッチファイルの使用に必要なOSのバージョン情報は「1.01」である。実行中の最新版のOSのバージョン情報は少なくとも1.01以上であるため、OSバージョン比較部142は、実行中のOSのバージョン情報が、バージョンファイルに含まれるOSのバージョン情報と同じか、または、より新しいことを示していることを判定する。そのためOS取得部134は、OSの取得処理を実行しない。
【0065】
この比較結果を受けて、パッチバージョン比較部144は、起動するゲームソフトウェア150に適用するパッチファイルのバージョン情報と、バージョンファイルに含まれるバージョン情報とを比較する。ゲーム装置10は、ハードディスクドライブ34において、既にパッチファイル160a、160bを保持している。ここでパッチファイル160aのバージョン情報を「2」、パッチファイル160bのバージョン情報を「3」であるとする。したがって、パッチバージョン比較部144は、起動するゲームソフトウェア150に適用するパッチファイル160a、160bのバージョン情報「2」、「3」と、バージョンファイルに含まれるバージョン情報「2」、「3」、「4」を比較し、バージョンファイルに含まれるバージョン情報「4」が、起動するゲームソフトウェアに適用するパッチファイルのバージョン情報よりも新しいことを判定する。この比較結果は、パッチファイル取得部136に供給される。
【0066】
パッチファイル取得部136は、比較結果を受けると、ファイル提供サーバ16にアクセスして、バージョン情報「4」で特定されるパッチファイルを取得する。バージョン4のパッチファイルの取得アドレスは、パッチ情報180cにおいて「パッチ取得URL」として記述されており、パッチファイル取得部136は、このアドレスにアクセスして、バージョン4のパッチファイルを取得し、ハードディスクドライブ34に格納する。新たなパッチファイルが取得されると、アプリケーション実行部114は、ゲームソフトウェア150を再起動して、取得したパッチファイルを適用する。
【0067】
パッチファイルを使用するために必要なOSをインストールしていなければ、パッチファイルを取得してもゲームソフトウェアに適用できない。そこでゲーム装置10は、パッチファイルをダウンロードする前に、パッチファイルを使用するために必要なOSをダウンロードしておくことで、その後ダウンロードしたパッチファイルをゲームソフトウェアに好適に適用することができる。
【0068】
図5は、ゲーム装置10におけるファイル取得処理のフローチャートを示す。OS実行部112が、ハードディスクドライブ34に格納されているバージョン1.00のOSを実行する(S10)。アプリケーション実行部114がゲームソフトウェアを起動すると(S12)、バージョンファイル取得部132が管理サーバ12からバージョンファイルを取得する(S14)。OSバージョン比較部142は、実行中のOSのバージョン情報(1.00)と、バージョンファイルに含まれるOSのバージョン情報とを比較し、OSの更新の必要性を判定する(S16)。
【0069】
たとえばOSバージョン比較部142は、実行中のOSのバージョン情報と、起動したゲームソフトウェアの実行に推奨されるOSのバージョン情報とを比較して、起動したゲームソフトウェアの好適な実行に必要なOSのバージョン情報がより新しければ、OSの更新が必要であることを判定する(S16のY)。一方、実行中のOSのバージョン情報がより新しければ、OSの更新が不要であることを判定する(S16のN)。
【0070】
またOSバージョン比較部142は、実行中のOSのバージョン情報と、パッチファイルを使用するために必要なOSのバージョン情報とを比較して、パッチファイルを使用するために必要なOSのバージョン情報がより新しければ、OSの更新が必要であることを判定してもよい(S16のY)。一方、実行中のOSのバージョン情報がより新しければ、OSの更新が不要であることを判定してもよい(S16のN)。
【0071】
OSの更新が必要であることが判定されると(S16のY)、OS取得部134は、更新サーバ14から最新版のOSをダウンロードして取得し(S18)、ハードディスクドライブ34に格納する。OS実行部112は、実行中のOSを終了し(S20)、取得した最新版のOSを再起動する(S10)。以後、S12〜S16までのステップが実行される。
【0072】
OSの更新が不要であることが判定されると(S16のN)、パッチバージョン比較部144は、バージョンファイルを参照して、未取得のパッチファイルが存在するか判定する(S22)。この判定は、バージョンファイルに含まれるパッチファイルのバージョン情報と、ハードディスクドライブ34に格納しているパッチファイルのバージョン情報とを比較することで行われる。未取得のパッチファイルがある場合(S22のY)、パッチファイル取得部136は、ファイル提供サーバ16からパッチファイルをダウンロードして取得し(S24)、ハードディスクドライブ34に格納する。アプリケーション実行部114は、ゲームソフトウェアを再起動し(S12)、ハードディスクドライブ34に格納しているパッチファイルを適用して、ゲームソフトウェアを実行する。以後、S14〜S22までのステップが実行される。未取得のパッチファイルがないことが判定されると(S22のN)、ファイル取得処理が終了する。
【0073】
以上、本発明を実施例をもとに説明した。この実施例は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。実施例では、ゲームソフトウェアが記録された記録媒体の例としてROM媒体を示したが、記録媒体は、たとえば情報の書換可能な媒体であっても構わない。
【0074】
OS実行部112は、OS170を起動して、ネットワーク接続機能を実行する。OS実行部112は、ネットワーク接続を行うために最低限必要なOSのバージョン情報を保持しており、実行しているOS170のバージョン情報が、そのバージョン情報と同じか、またはそれよりも新しければ、ネットワーク接続機能をアクティブにし、ゲーム装置10は、ネットワーク18に接続可能となる。ここでは、ネットワーク接続を行うために最低限必要なOSバージョン情報が「1.00」であるとする。したがってゲーム装置10は、バージョン1.00のOS170の実行中、ネットワーク接続を行うために最低限必要なOSバージョン情報が「1.00」であるため、ネットワーク18に接続できる。
【0075】
ゲームソフトウェアには、ネットワーク18に接続して、ネットワーク対戦を可能とするものも存在する。ネットワーク対戦を行う場合は、対戦者同士がゲーム装置10を同じ環境にしていることが好ましい。したがって本実施例のゲームシステムでは、図4に示すバージョン情報178で特定されるOSをインストールしなければ、ネットワークゲームを実行させないようにする。
【0076】
アプリケーション実行部114がゲームソフトウェア150を起動すると、取得したバージョンファイル中のバージョン情報178が「1.01」であるため、OS実行部112は、バージョン情報178が、OS170のバージョン情報よりも新しいことを判定し、ゲームソフトウェア150の実行中におけるネットワーク接続を禁止する。なお、ゲームソフトウェア150の実行を終了すると、OS実行部112は、OS170のバージョン情報が、ネットワーク接続を行うために最低限必要なOSのバージョン情報と同じであることを判定してネットワーク接続機能をアクティブにし、ゲーム装置10は、ネットワーク18に接続可能となる。
【0077】
このようにバージョン情報178は、ゲームソフトウェア150の実行中にネットワーク18に接続するために必要なOSのバージョン情報を特定し、ネットワーク対戦の実行可否を判断するための条件として用いられる。このように、バージョン情報178がゲーム中にネットワーク接続するために必要なOSのバージョン情報として利用されることで、ユーザに対して、ゲームソフトウェアの実行に推奨されるOSをダウンロードさせるインセンティブを与えることができ、また、ネットワーク対戦するユーザの環境を揃えることが可能となる。
【図面の簡単な説明】
【0078】
【図1】本発明の実施例にかかるファイル取得システムを示す図である。
【図2】ゲーム装置の機能ブロック図を示す図である。
【図3】ゲーム装置におけるファイル取得処理を実行するための機能ブロックを示す図である。
【図4】バージョンファイルの一例を示す図である。
【図5】ゲーム装置におけるファイル取得処理のフローチャートを示す図である。
【符号の説明】
【0079】
1・・・ファイル取得システム、10・・・ゲーム装置、12・・・管理サーバ、14・・・更新サーバ、16・・・ファイル提供サーバ、18・・・ネットワーク、32・・・メディアドライブ、34・・・ハードディスクドライブ、40・・・入力装置、50・・・ROM媒体、60・・・表示機器、100・・・メインコントローラ、110・・・実行処理部、112・・・OS実行部、114・・・アプリケーション実行部、120・・・更新処理部、130・・・取得部、132・・・バージョンファイル取得部、134・・・OS取得部、136・・・パッチファイル取得部、138・・・OS情報ファイル取得部、140・・・比較部、142・・・OSバージョン比較部、144・・・パッチバージョン比較部、150・・・ゲームソフトウェア、160・・・パッチファイル、170・・・OS、176・・・タイトル情報、178・・・バージョン情報、180・・・

【特許請求の範囲】
【請求項1】
第1バージョン情報で特定されるオペレーティングシステムを実行するオペレーティングシステム実行部と、
ゲームソフトウェアを起動するアプリケーション実行部と、
ネットワークを介して、起動したゲームソフトウェアの識別情報を用いて、そのゲームソフトウェアの実行に推奨されるオペレーティングシステムを特定する第2バージョン情報を含むバージョンファイルを取得するバージョンファイル取得部と、
第1バージョン情報と、第2バージョン情報とを比較する第1バージョン比較部と、
第2バージョン情報が、第1バージョン情報よりも新しいことを示す場合に、ネットワークを介して、第2バージョン情報または第2バージョン情報よりも新しいバージョン情報で特定されるオペレーティングシステムを取得するオペレーティングシステム取得部と、
を備えることを特徴とするゲーム装置。
【請求項2】
前記バージョンファイル取得部は、ゲームソフトウェアのパッチファイルのバージョン情報と、パッチファイルを使用するために必要なオペレーティングシステムを特定する第2バージョン情報と、パッチファイルを格納する位置を示すアドレス情報とを対応づけたバージョンファイルを取得することを特徴とする請求項1に記載のゲーム装置。
【請求項3】
前記オペレーティングシステム実行部が、実行中の第1バージョン情報で特定されるオペレーティングシステムを終了して、前記オペレーティングシステム取得部において取得されたオペレーティングシステムを起動した後、前記アプリケーション実行部が、ゲームソフトウェアを起動するときに、
起動するゲームソフトウェアに適用するパッチファイルのバージョン情報と、前記バージョンファイルに含まれるバージョン情報とを比較する第2バージョン比較部と、
前記バージョンファイルに含まれるバージョン情報が、起動するゲームソフトウェアに適用するパッチファイルのバージョン情報よりも新しいことを示す場合に、ネットワークを介して、前記バージョンファイルに含まれるバージョン情報で特定されるパッチファイルを取得するパッチファイル取得部と、
を備えることを特徴とする請求項2に記載のゲーム装置。
【請求項4】
前記オペレーティングシステム実行部は、ネットワーク接続を行うために必要なオペレーティングシステムのバージョン情報を保持しており、実行しているオペレーティングシステムのバージョン情報が、ネットワーク接続を行うために必要なオペレーティングシステムのバージョン情報と同じか、またはそれよりも新しければ、ネットワーク接続機能を実行するものであって、
前記オペレーティングシステム実行部は、バージョンファイルに含まれる第2バージョン情報が、実行しているオペレーティングシステムのバージョン情報よりも新しい場合に、ゲームソフトウェア実行中におけるネットワーク接続を禁止することを特徴とする請求項1から3のいずれかに記載のゲーム装置。
【請求項5】
第1バージョン情報で特定されるオペレーティングシステムを実行するオペレーティングシステム実行部と、
アプリケーションソフトウェアを起動するアプリケーション実行部と、
ネットワークを介して、起動したアプリケーションソフトウェアの実行に推奨されるオペレーティングシステムを特定する第2バージョン情報を含むバージョンファイルを取得するバージョンファイル取得部と、
第1バージョン情報と、第2バージョン情報とを比較する第1バージョン比較部と、
第2バージョン情報が、第1バージョン情報よりも新しいことを示す場合に、ネットワークを介して、第2バージョン情報または第2バージョン情報よりも新しいバージョン情報で特定されるオペレーティングシステムを取得するオペレーティングシステム取得部と、
を備えることを特徴とする情報処理装置。
【請求項6】
コンピュータに、
第1バージョン情報で特定されるオペレーティングシステムを実行する機能と、
アプリケーションソフトウェアを起動する機能と、
ネットワークを介して、起動したアプリケーションソフトウェアの実行に推奨されるオペレーティングシステムを特定する第2バージョン情報を含むバージョンファイルを取得する機能と、
第1バージョン情報と、第2バージョン情報とを比較する機能と、
第2バージョン情報が、第1バージョン情報よりも新しいことを示す場合に、ネットワークを介して、第2バージョン情報または第2バージョン情報よりも新しいバージョン情報で特定されるオペレーティングシステムを取得する機能と、
を実現させるためのプログラム。
【請求項7】
請求項6に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate


【公開番号】特開2010−88825(P2010−88825A)
【公開日】平成22年4月22日(2010.4.22)
【国際特許分類】
【出願番号】特願2008−264591(P2008−264591)
【出願日】平成20年10月10日(2008.10.10)
【出願人】(395015319)株式会社ソニー・コンピュータエンタテインメント (871)
【Fターム(参考)】