JP2006305091A - ゲームシステム、ゲーム装置およびゲームプログラム - Google Patents

ゲームシステム、ゲーム装置およびゲームプログラム Download PDF

Info

Publication number
JP2006305091A
JP2006305091A JP2005131910A JP2005131910A JP2006305091A JP 2006305091 A JP2006305091 A JP 2006305091A JP 2005131910 A JP2005131910 A JP 2005131910A JP 2005131910 A JP2005131910 A JP 2005131910A JP 2006305091 A JP2006305091 A JP 2006305091A
Authority
JP
Japan
Prior art keywords
game
scene
shared
data
update
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
JP2005131910A
Other languages
English (en)
Other versions
JP4754261B2 (ja
Inventor
Hisashi Nogami
恒 野上
Kunihiro Komatsu
国博 小松
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.)
Nintendo Co Ltd
Original Assignee
Nintendo Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nintendo Co Ltd filed Critical Nintendo Co Ltd
Priority to JP2005131910A priority Critical patent/JP4754261B2/ja
Priority to US11/367,434 priority patent/US8414396B2/en
Publication of JP2006305091A publication Critical patent/JP2006305091A/ja
Application granted granted Critical
Publication of JP4754261B2 publication Critical patent/JP4754261B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • A63F13/12
    • 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/32Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers using local area network [LAN] connections
    • A63F13/327Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers using local area network [LAN] connections using wireless networks, e.g. Wi-Fi® or piconet
    • 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
    • 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/31Communication aspects specific to video games, e.g. between several handheld game devices at close range
    • 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/90Constructional details or arrangements of video game devices not provided for in groups A63F13/20 or A63F13/25, e.g. housing, wiring, connections or cabinets
    • A63F13/92Video game devices specially adapted to be hand-held while playing
    • 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/20Features 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 the game platform
    • A63F2300/204Features 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 the game platform the platform being a handheld device
    • 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/404Features 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 characterized by a local network connection
    • A63F2300/405Features 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 characterized by a local network connection being a wireless ad hoc network, e.g. Bluetooth, Wi-Fi, Pico net

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

【構成】 ゲームシステム100は複数のゲーム装置10を含み、各ゲーム装置10は通信可能に接続される。通信ゲームにおける仮想空間は複数のシーンで構成されており、各シーンに参加しているゲーム装置10の中で、当該シーンの親機(シーンホスト)と子機(シーンビジター)とが決定される。ゲーム中では、シーンホストは、通信ゲームに参加しているすべてのゲーム装置10で共有すべきシーン共有データおよび自機が存在するシーンに参加しているゲーム装置10だけで共有すべきシーン固有データの更新処理を実行する。
【効果】 各シーンの親機が処理を分担するので、1台のゲーム装置に処理が集中することがなく、通信効率の低下を防止することができる。
【選択図】 図1

Description

この発明はゲームシステム、ゲーム装置およびゲームプログラムに関し、特にたとえば、通信機能を備えた複数のゲーム装置で構成され、各々のプレイヤが自身のゲーム装置を用いて仮想ゲームへ参加する、ゲームシステム、ゲーム装置およびゲームプログラムに関する。
従来、複数のゲーム装置間で通信ゲームを行う場合、各ゲーム装置間での通信結果を一致させるために、各ゲーム装置のプレイヤが操作した情報を1台のゲーム装置(親機)に集め、整合を取った上で他のすべてのゲーム装置(子機)に送信するという方法が採られている。ここで、親機と複数の子機との間で通信を行う通信ゲームにおいて、親機となるゲーム装置を所定の条件に応じて変えるものが知られている。この一例が特許文献1に開示される。特許文献1によれば、複数のゲーム装置間で通信ゲームを行う場合に、処理サイクルが所定の回数実行される度に、親機となるゲーム装置を順番に変更させるようにしてある。これにより、ゲームの進行において各ゲーム装置のプレイヤが受ける有利不利の偏りを無くし、公平にゲームをプレイすることができる。
特開2004−174091号
この特許文献1に開示される背景技術では、ゲームの有利不利の偏りを無くすことができるため、対戦ゲーム等において効果的であるが、親機は常に1台しか存在しないため、通信ゲームに参加する子機の数が増加すると、親機の処理負担が増大し、通信効率の低下を招いてしまうという問題がある。
それゆえに、この発明の主たる目的は、新規な、ゲームシステム、ゲーム装置およびゲームプログラムを提供することである。
この発明の他の目的は、通信効率の低下を防止できる、ゲームシステム、ゲーム装置およびゲームプログラムを提供することである。
請求項1の発明は、通信機能を備えた複数のゲーム装置によって構成され、複数のシーンを含む仮想ゲーム空間内のいずれかのシーンに当該複数のゲーム装置の各々がプレイヤとして参加してプレイするゲームシステムである。各々のゲーム装置は、共有データゲーム記憶手段、固有ゲームデータ記憶手段、親機設定手段、子機設定手段、親機処理手段、および子機処理手段を含む。共有ゲームデータ記憶手段は、すべてのゲーム装置で共有すべき共有ゲームデータを記憶する。固有ゲームデータ記憶手段は、自機が参加しているシーンのみで共有すべきシーン固有の固有ゲームデータを記憶する。親機設定手段は、参加するシーンに他のゲーム装置が参加していないとき、自機を当該シーンの親機として設定する。子機設定手段は、参加するシーンに他のゲーム装置が参加しているとき、自機を当該シーンの子機として設定する。親機処理手段は、親機設定手段によって自機がシーンの親機として設定されたとき、少なくとも、共有ゲームデータの更新を自機以外のすべてのゲーム装置に指示し、または、固有ゲームデータの更新を当該シーンに参加しているすべての子機に指示する。そして、子機処理手段は、子機設定手段によって自機がシーンの子機として設定されたとき、少なくとも、親機からの指示に従って固有ゲームデータを更新する。
請求項1の発明では、ゲームシステム(100:実施例における参照符号。以下、同じ。)は、通信機能を備える複数のゲーム装置(10)によって構成される。複数のゲーム装置(10)の各々は、複数のシーンを含む仮想ゲーム空間(200)内のいずれかのシーンにプレイヤとして参加して通信ゲームをプレイする。各々のゲーム装置(10)は、共有ゲームデータ記憶手段(48,760)、固有ゲームデータ記憶手段(48,762)、親機設定手段(42)、子機設定手段(42)、親機処理手段(42,S5,S39,S73,S93)および子機処理手段(42,S35,S69,S89)を含む。共有ゲームデータ記憶手段(48,760)は、システム(100)を構成し、通信ゲームをプレイする、すべてのゲーム装置(10)で共有すべき共有ゲームデータ(760a,760b,…)を記憶する。固有ゲームデータ記憶手段(48,762)は、自機が参加しているシーンのみで共有すべきシーン固有の固有ゲームデータ(762a)を記憶する。親機設定手段(42)は、参加(他のシーンに移動する場合も含む。以下、同じ。)するシーンに他のゲーム装置(10)が参加していないとき、自機を当該シーンの親機(実施例では、「シーンホスト」という。)として設定する。子機設定手段(42)は、参加するシーンに他のゲーム装置(10)が参加しているとき、自機を当該シーンの子機(実施例では、「シーンビジター」という。)として設定する。親機処理手段(42,S5,S39,S73,S93)は、自機がシーンホストとして設定されたとき、少なくとも、共有ゲームデータの更新を自機以外のすべてのゲーム装置(10)に指示し、または、固有ゲームデータの更新を当該シーンに参加するすべての子機に指示する。したがって、シーン毎に設定されたシーンホストが通信ゲームにおける処理を分担する。一方、子機処理手段(42,S35,S69,S89)は、自機がシーンビジターとして設定されたとき、少なくとも、親機からの指示に従って固有ゲームデータを更新する。
請求項1の発明によれば、シーン毎に設定した親機が処理を分担するので、1台のゲーム装置に処理が集中することがない。このため、通信ゲームに参加するゲーム装置の増加により、通信効率が低下するのを防止することができる。
請求項2の発明は、請求項1に従属し、子機処理手段は、共有ゲームデータの更新を自機が参加するシーンの親機に要求する共有ゲームデータ更新要求手段を含み、親機処理手段は、子機からの共有ゲームデータの更新要求を受けて、共有ゲームデータの更新を自機以外のすべてのゲーム装置に指示する。
請求項2の発明では、シーンビジターでは、共有ゲームデータ更新要求手段(42,S147)が、共有ゲームデータ(760a,760b,…)の更新を自機が参加するシーンのシーンホストに要求する。シーンホストは、子機からの共有ゲームデータの更新要求を受けて(S117)、共有ゲームデータ(760a,760b,…)の更新を自機以外のすべてのゲーム装置(10)に指示する(S121)。
請求項2の発明によれば、子機は同じシーンに参加する親機に共有ゲームデータの更新を要求し、これに応じて親機がすべてのゲーム装置に共有ゲームデータの更新を指示するので、ゲームデータの更新指示をする処理が各親機で分担される。つまり、処理が分散されるので、通信効率の低下を防止することができる。
請求項3の発明は請求項1または2に従属し、ゲーム装置は、他のゲーム装置から共有ゲームデータの更新指示を受信する更新指示受信手段、および更新指示手段によって共有ゲームデータの更新指示を受信したことに応じて共有ゲームデータを更新する共有ゲームデータ更新手段をさらに含む。
請求項3の発明では、ゲーム装置(10)は、更新指示受信手段(42,S129,S151,S159)および共有ゲームデータ更新手段(42,S131,S153,S161)をさらに含む。更新指示手段(42,S129,S151,S159)は、同じシーンまたは他のシーンに存在するシーンホストからの共有データ(760a,760b,…)の更新指示を受信する。共有ゲームデータ更新手段(42,S131,S153,S161)は、その更新指示を受信したことに応じて(S129,S151,S159で“YES”)、共有ゲームデータ(760a,760b,…)を更新する。
請求項3の発明によれば、同じシーンまたは他のシーンの親機からの指示に応じて、各ゲーム装置は、共有ゲームデータを更新することができる。
請求項4の発明は請求項1ないし3のいずれかに従属し、ゲーム装置は、他のシーンに移動するとき、自機が親機である場合に現在のシーンに子機が存在するか否かを判断する子機有無判断手段、および子機有無判断手段によって現在のシーンに子機が存在すると判断されたとき所定のルールに従って選択した1の子機に親機になることを要求する親機設定要求手段をさらに含む。
請求項4の発明では、ゲーム装置(10)は、子機有無判断手段(42,S209)および親機設定要求手段(42,S213)をさらに含む。子機有無判断手段(42,S213)は、他のシーンに移動するとき、自機が親機である場合(S207で“YES”)に、現在のシーンに子機が存在するか否かを判断する。親機設定要求手段(42,S213)は、子機が存在すると判断されたとき(S209で“YES”)、所定のルールに従って選択した1の子機に親機になることを要求する。たとえば、子機に割り当てられた通信IDを参照して、小さい通信IDの子機を選択する。または、ランダムに通信ID(子機)を選択する。
請求項4の発明では、親機が他のシーンに移動するとき、当該シーンに子機が存在する場合には、いずれかの子機に親機になることを要求するので、要求された子機がその後親機として処理を実行することができる。
請求項5の発明は請求項4に従属し、ゲーム装置は、他のゲーム装置から親機になることを要求されたかどうかを判断する親機設定要求判断手段、および親機設定要求判断手段によって親機になることを要求されたと判断されたとき、自機を親機として設定する設定変更手段をさらに含む。
請求項5の発明では、ゲーム装置(10)は、親機設定要求判断手段(42,S237)および設定変更手段(42,S239)をさらに含む。親機設定要求判断手段(42,S237)は、他のゲーム装置(10)すなわち現在の親機から親機になることを要求されたかどうかを判断する。設定変更手段(42,S239)は、親機になることを要求されたと判断されると(S237で“YES”)、自機を親機として設定する。
請求項5の発明によれば、親機になることを要求されたゲーム装置がシーンの親機に設定するため、その後、当該シーンにおける処理が滞ってしまうのを防止することができる。
請求項6の発明は請求項1ないし5のいずれかに従属し、ゲーム装置は、各々のゲーム装置が参加しているシーンについてのシーン識別情報および各々のゲーム装置が親機または子機のいずれに設定されているかを示す親子設定情報を含むシーン情報を記憶するシーン情報記憶手段をさらに含む。
請求項6の発明では、ゲーム装置(10)は、シーン情報記憶手段(48,78)をさらに含み、このシーン情報記憶手段(48,78)はシーン情報を記憶する。シーン情報は、各々のゲーム装置(10)が参加しているシーンについてのシーン識別情報(780)および各々のゲーム装置(10)が親機または子機のいずれに設定されているかを示す親機設定情報(782)を含む。
請求項6の発明によれば、シーン情報を記憶しておくので、各ゲーム装置は、自機を含むすべてのゲーム装置の各々がどのシーンに参加しているのか知ることができ、また、自機を含むすべてのゲーム装置がシーンの親機であるか子機であるかを知ることができる。
請求項7の発明は請求項6に従属し、ゲーム装置は、少なくとも、他のシーンに移動したとき、シーン情報を更新するシーン情報更新手段をさらに含む。
請求項7の発明では、ゲーム装置は、シーン情報更新手段(42,S23,S77)をさらに含み、このシーン情報更新手段(42,S23,S77)は、少なくとも、他のシーンに移動したとき(S171で“YES”)、シーン情報を更新する。つまり、シーン識別情報(780)および親機設定情報(782)の少なくとも一方を変更する。これは、上述したように、親機になることを要求され、親機に設定を変更した場合には(ステップS173で“YES”)、親機設定情報(782)のみが変更されるからである。また、シーン情報は、すべてのゲーム装置についての情報であるため、他のゲーム装置(10)からシーン情報の更新指示が与えられる場合もある。
請求項7の発明によれば、シーン情報が更新されるため、すべてのゲーム装置の最新のシーン情報を知ることができる。
請求項8は、複数のシーンを含む仮想空間にプレイヤとして参加し、通信ゲームをプレイするゲーム装置であって、共有ゲームデータ記憶手段、固有ゲームデータ記憶手段、親機設定手段、子機設定手段、親機処理手段、および子機処理手段を備える。共有ゲームデータ記憶手段は、通信ゲームを行うすべてのゲーム装置で共有すべき共有ゲームデータを記憶する。固有ゲームデータ記憶手段は、自機が参加しているシーンのみで共有すべきシーン固有の固有ゲームデータを記憶する。親機設定手段は、参加するシーンに他のゲーム装置が参加していないとき、自機を当該シーンの親機として設定する。子機設定手段は、参加するシーンに他のゲーム装置が参加しているとき、自機を当該シーンの子機として設定する。親機処理手段は、親機設定手段によって自機がシーンの親機として設定されたとき、少なくとも、共有ゲームデータの更新を自機以外のすべてのゲーム装置に指示し、または、固有ゲームデータの更新を当該シーンに参加しているすべての子機に指示する。そして、子機処理手段は、子機設定手段によって自機がシーンの子機として設定されたとき、少なくとも、親機からの指示に従って固有ゲームデータを更新する。
請求項8の発明においても、請求項1の発明と同様に、処理を分担することにより、通信効率の低下を防止することができる。
請求項15の発明は、複数のシーンを含む仮想空間にプレイヤとして参加し、通信ゲームをプレイするゲーム装置のゲームプログラムであって、ゲーム装置は、通信ゲームを行うすべてのゲーム装置で共有すべき共有ゲームデータを記憶する共有ゲームデータ記憶手段、および自機が参加しているシーンのみで共有すべきシーン固有の固有ゲームデータを記憶する固有ゲームデータ記憶手段を備え、ゲームプログラムは、ゲーム装置のプロセサに、親機設定ステップ、子機設定ステップ、親機処理ステップ、および子機処理ステップを実行させる。親機設定ステップは、参加するシーンに他のゲーム装置が参加していないとき、自機を当該シーンの親機として設定する。子機設定ステップは、参加するシーンに他のゲーム装置が参加しているとき、自機を当該シーンの子機として設定する。親機処理ステップは、親機設定ステップによって自機がシーンの親機として設定されたとき、少なくとも、共有ゲームデータの更新を自機以外のすべてのゲーム装置に指示し、または、固有ゲームデータの更新を当該シーンに参加しているすべての子機に指示する。そして、子機処理ステップは、子機設定ステップによって自機がシーンの子機として設定されたとき、少なくとも、親機からの指示に従って固有ゲームデータを更新する。
請求項15の発明においても、請求項1の発明と同様に、処理を分担することにより、通信効率の低下を防止することができる。
この発明によれば、シーン毎に存在する親機が処理を分担するので、1つのゲーム装置に処理が集中してしまうことがない。このため、通信効率の低下を防止することができる。
この発明の上述の目的,その他の目的,特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。
図1を参照して、この発明の一実施例であるゲームシステム(以下、単に「システム」という。)100は複数のゲーム装置10を含む。図1では、3台のゲーム装置10によってシステム100が構成されるように示してあるが、2台以上であれば、4台以上によって構成するようにしてもよい。システム100では、複数のゲーム装置10の各々は、通信(この実施例では、無線通信)可能に接続されており、1のゲーム装置10が親機(説明の便宜上、以下において、「ネットワーク親機」と呼ぶことがある。)となり、ネットワーク親機以外の他のゲーム装置10はすべて子機(説明の便宜上、以下において、「ネットワーク子機」と呼ぶことがある。)となる。
ここで、ネットワーク親機の決定の仕方は様々であるが、たとえば、無線通信を開始した後に、一番に何らかのボタンが操作されたゲーム装置を、ネットワーク親機として決定することができる。また、ネットワーク親機が決定されると、それ以外のゲーム装置10はネットワーク子機として決定される。ただし、各ネットワーク子機を判別可能とするため、ネットワーク親機は、各ネットワーク子機に、識別情報ないし識別番号(以下、「通信ID」という。)を割り当てる。
図2は図1に示すゲーム装置10の外観を示す図解図である。この図2を参照して、ゲーム装置10は、第1の液晶表示器(LCD)12および第2のLCD14を含む。このLCD12およびLCD14は、所定の配置位置となるようにハウジング16に収納される。この実施例では、ハウジング16は、上側ハウジング16aと下側ハウジング16bとによって構成され、LCD12は上側ハウジング16aに収納され、LCD14は下側ハウジング16bに収納される。したがって、LCD12とLCD14とは縦(上下)に並ぶように近接して配置される。
なお、この実施例では、表示器としてLCDを用いるようにしてあるが、LCDに代えて、EL(Electronic Luminescence)ディスプレイやプラズマディスプレイを用いるようにしてもよい。
図2からも分かるように、上側ハウジング16aは、LCD12の平面形状よりも少し大きな平面形状を有し、一方主面からLCD12の表示面を露出するように開口部が形成される。一方、下側ハウジング16bは、その平面形状が上側ハウジング16aよりも横長に選ばれ、横方向の略中央部にLCD14の表示面を露出するように開口部が形成される。また、下側ハウジング16bには、音抜き孔18が形成されるとともに、操作スイッチ20(20a,20b,20c,20d,20e,20Lおよび20R)が設けられる。
また、上側ハウジング16aと下側ハウジング16bとは、上側ハウジング16aの下辺(下端)と下側ハウジング16bの上辺(上端)の一部とが回動可能に連結されている。したがって、たとえば、ゲームをプレイしない場合には、LCD12の表示面とLCD14の表示面とが対面するように、上側ハウジング16aを回動させて折りたたんでおけば、LCD12の表示面およびLCD14の表示面に傷がつくなどの破損を防止することができる。ただし、上側ハウジング16aと下側ハウジング16bとは、回動可能に連結せずに、それらを一体的(固定的)に設けたハウジング16を形成するようにしてもよい。
操作スイッチ20は、方向指示スイッチ(十字スイッチ)20a,スタートスイッチ20b、セレクトスイッチ20c、動作スイッチ(Aボタン)20d、動作スイッチ(Bボタン)20e、動作スイッチ(Lボタン)20Lおよび動作スイッチ(Rボタン)20Rを含む。スイッチ20a,20bおよび20cは、下側ハウジング16bの一方主面であり、LCD14の左側に配置される。また、スイッチ20dおよび20eは、下側ハウジング16bの一方主面であり、LCD14の右側に配置される。さらに、スイッチ20Lおよびスイッチ20Rは、それぞれ、下側ハウジング16bの上端(天面)の一部であり、上側ハウジング16aとの連結部以外に当該連結部を挟むように、左右に配置される。
方向指示スイッチ20aは、ディジタルジョイスティックとして機能し、4つの押圧部の1つを操作することによって、プレイヤによって操作可能なプレイヤキャラクタ(またはプレイヤオブジェクト)の移動方向を指示したり、カーソルの移動方向を指示したりする等に用いられる。スタートスイッチ20bは、プッシュボタンで構成され、ゲームを開始(再開)したり、一時停止(Pause)したりする等に用いられる。セレクトスイッチ20cは、プッシュボタンで構成され、ゲームモードの選択等に用いられる。
動作スイッチ20dすなわちAボタンは、プッシュボタンで構成され、方向指示以外の動作、すなわち、プレイヤキャラクタに打つ(パンチ)、投げる、つかむ(取得)、乗る、ジャンプするなどの任意のアクションをさせることができる。たとえば、アクションゲームにおいては、ジャンプ、パンチ、武器を動かす等を指示することができる。また、ロールプレイングゲーム(RPG)やシミュレーションRPGにおいては、アイテムの取得、武器やコマンドの選択および決定等を指示することができる。動作スイッチ20eすなわちBボタンは、プッシュボタンで構成され、セレクトスイッチ20cで選択したゲームモードの変更やAボタン20dで決定したアクションの取り消し等のために用いられる。
動作スイッチ(左押しボタン)20Lおよび動作スイッチ(右押しボタン)20Rは、プッシュボタンで構成され、左押しボタン(Lボタン)20Lおよび右押しボタン(Rボタン)20Rは、Aボタン20dおよびBボタン20eと同様の操作に用いることができ、また、Aボタン20dおよびBボタン20eの補助的な操作に用いることができる。
また、LCD14の上面には、タッチパネル22が装着される。タッチパネル22としては、たとえば、抵抗膜方式、光学式(赤外線方式)および静電容量結合式のいずれかの種類のものを用いることができる。また、タッチパネル22は、その上面(検出面)をスティック24ないしはペン(スタイラスペン)或いは指(以下、これらを「スティック24等」という場合がある。)で、押圧したり、撫でたり、触れたりすることにより操作すると、スティック24等の操作位置の座標を検出して、検出した座標(検出座標)に対応する座標データを出力する。
この実施例では、LCD14(LCD12も同じ、または略同じ。)の表示面の解像度は256dot×192dotであり、タッチパネル22の検出面の検出精度もその解像度に対応して256dot×192dotとしてある。ただし、タッチパネル22の検出面の検出精度は、LCD14の表示面の解像度よりも低くてもよく、高くてもよい。
LCD12およびLCD14には異なるゲーム画像(ゲーム画面)を表示することができる。たとえば、一方のLCD(たとえば、LCD12)にゲームをプレイするためのゲーム画面を表示し、他方のLCD(たとえば、LCD14)に当該ゲームを操作するための文字情報を入力したり、アイコンを指示したりするためのゲーム画面(操作画面)を表示することができる。したがって、プレイヤはスティック24等でタッチパネル22を操作することにより、LCD14の画面上で、文字情報(コマンド)を入力したり、アイコン(或いは所定の画像)を指示したりすることができる。
このように、ゲーム装置10は、2画面分の表示部となるLCD12およびLCD14を有し、いずれか一方(この実施例では、LCD14)の上面にタッチパネル22が設けられるので、2画面(12,14)と2系統の操作部(20,22)とを有する構成になっている。
また、この実施例では、スティック24は、たとえば上側ハウジング16aの側面(右側面)近傍に設けられる収納部(収納穴)26に収納することができ、必要に応じて取り出される。ただし、スティック24を設けない場合には、収納部26を設ける必要もない。
さらに、ゲーム装置10はメモリカード(またはゲームカートリッジ)28を含み、このメモリカード28は着脱自在であり、下側ハウジング16bの裏面ないしは下端(底面)に設けられる挿入口30から挿入される。図2では省略するが、挿入口30の奥部には、メモリカード28の挿入方向先端部に設けられるコネクタ(図示せず)と接合するためのコネクタ46(図3参照)が設けられており、したがって、メモリカード28が挿入口30に挿入されると、コネクタ同士が接合され、ゲーム装置10のCPUコア42(図3参照)がメモリカード28にアクセス可能となる。
さらにまた、ゲーム装置10はアンテナ32を含み、たとえば、このアンテナ32によって微弱電波を送受信することにより、他のゲーム装置10との間で無線通信が可能である。詳細な説明は省略するが、この実施例で示すゲーム装置10が送受信する微弱電波は、電波法による規制のかからない強度に設定されている。
なお、図2では表現できないが、下側ハウジング16bの音抜き孔18と対応する位置であり、この下側ハウジング16bの内部にはスピーカ32(図3参照)が設けられる。
また、図2では省略するが、たとえば、下側ハウジング16bの裏面側には、電池収容ボックスが設けられ、また、下側ハウジング16bの底面側には、電源スイッチ、音量スイッチ、外部拡張コネクタおよびイヤフォンジャックなどが設けられる。
図3はゲーム装置10の電気的な構成を示すブロック図である。図3を参照して、ゲーム装置10は電子回路基板40を含み、この電子回路基板40にはCPUコア42等の回路コンポーネントが実装される。CPUコア42は、バス44を介してコネクタ46に接続されるととともに、RAM48、第1のグラフィック処理ユニット(GPU)50、第2のGPU52、入出カインターフエース回路(以下、「I/F回路」という。)54およびLCDコントローラ60が接続される。
コネクタ46には、上述したように、メモリカード28が着脱自在に接続される。メモリカード28は、ROM28aおよびRAM28bを含み、図示は省略するが、ROM28aおよびRAM28bは、互いにバスで接続され、さらに、コネクタ46と接合されるコネクタ(図示せず)に接続される。したがって、上述したように、CPUコア42は、ROM28aおよびRAM28bにアクセスすることができるのである。
ROM28aは、ゲーム装置10で実行すべきゲーム(仮想ゲーム)のためのゲームプログラム、画像(キャラクタ画像、背景画像、アイテム画像、アイコン(ボタン)画像、メッセージ画像など)データおよびゲームに必要な音(音楽)のデータ(音データ)等を予め記憶する。RAM(バックアップRAM)28bは、そのゲームの途中データやゲームの結果データを記憶(セーブ)する。
RAM48は、バッファメモリないしはワーキングメモリとして使用される。つまり、CPUコア42は、メモリカード28のROM28aに記憶されたゲームプログラム、画像データおよび音データ等をRAM48にロードし、ロードしたゲームプログラムを実行する。また、CPUコア42は、ゲームの進行に応じて一時的に発生するデータ(ゲームデータやフラグデータ)をRAM48に記憶しつつゲーム処理を実行する。
なお、ゲームプログラム、画像データおよび音データ等は、ROM28aから一度に全部、または部分的かつ順次的に読み出され、RAM48に記憶(ロード)される。
GPU50およびGPU52は、それぞれ、描画手段の一部を形成し、たとえばシングルチップASICで構成され、CPUコア42からのグラフィックスコマンド(graphics command :作画命令)を受け、そのグラフィックスコマンドに従ってゲーム画像データを生成する。ただし、CPUコア42は、グラフィックスコマンドに加えて、ゲーム画像データの生成に必要な画像生成プログラム(ゲームプログラムに含まれる。)をGPU50およびGPU52のそれぞれに与える。
また、GPU50には、第1のビデオRAM(以下、「VRAM」という。)56が接続され、GPU52には、第2のVRAM58が接続される。GPU50およびGPU52が作画コマンドを実行するにあたって必要なデータ(画像データ:キャラクタデータやテクスチャ等のデータ)は、GPU50およびGPU52が、それぞれ、第1のVRAM56および第2のVRAM58にアクセスして取得する。なお、CPUコア42は、描画に必要な画像データをGPU50およびGPU52を介して第1のVRAM56および第2のVRAM58に書き込む。GPU50はVRAM56にアクセスして描画のためのゲーム画像データを作成し、GPU52はVRAM58にアクセスして描画のためのゲーム画像データを作成する。
VRAM56およびVRAM58は、LCDコントローラ60に接続される。LCDコントローラ60はレジスタ62を含み、レジスタ62はたとえば1ビットで構成され、CPUコア42の指示によって「0」または「1」の値(データ値)を記憶する。LCDコントローラ60は、レジスタ62のデータ値が「0」である場合には、GPU50によって作成されたゲーム画像データをLCD12に出力し、GPU52によって作成されたゲーム画像データをLCD14に出力する。また、LCDコントローラ60は、レジスタ62のデータ値が「1」である場合には、GPU50によって作成されたゲーム画像データをLCD14に出力し、GPU52によって作成されたゲーム画像データをLCD12に出力する。
なお、LCDコントローラ60は、VRAM56およびVRAM58から直接ゲーム画像データを読み出したり、GPU50およびGPU52を介してVRAM56およびVRAM58からゲーム画像データを読み出したりする。
I/F回路54には、操作スイッチ20,タッチパネル22およびスピーカ32が接続される。ここで、操作スイッチ20は、上述したスイッチ20a,20b,20c,20d,20e,20Lおよび20Rであり、操作スイッチ20が操作されると、対応する操作信号(操作データ)がI/F回路54を介してCPUコア42に入力される。また、タッチパネル22からの座標データがI/F回路54を介してCPUコア42に入力される。さらに、CPUコア42は、ゲーム音楽(BGM)、効果音またはゲームキャラクタ(ゲームオブジェクト)の音声(擬制音)などのゲームに必要な音データをRAM48から読み出し、I/F回路54を介してスピーカ32から出力する。
また、図2に示したように、ゲーム装置10には、アンテナ32が接続されており、このアンテナ32は無線通信ユニット64に接続される。無線通信ユニット64は、バス44を介してCPUコア42に接続される。CPUコア42がゲームデータやコマンドを無線通信ユニット64に与えると、無線通信ユニット64はゲームデータ等をアナログ信号に変換して、微弱電波でアンテナ32から送信(発信)する。一方、無線通信ユニット64は、他のゲーム装置10から送信された微弱電波をアンテナ32を介して受信し、受信した微弱電波からアナログ信号を分離し、ディジタル変換した後、CPUコア42に与える。このようにして、他のゲーム装置10との間で無線通信が行われる。したがって、システム100では、各々のゲーム装置10で通信して同一の仮想ゲーム(通信ゲーム)をプレイすることができる。
従来、複数のゲーム装置間で通信ゲームを行う場合、各ゲーム装置間での通信結果を一致させるために、各ゲーム装置のプレイヤが操作した情報を1つのゲーム装置(ネットワーク親機)に集め、整合を取った上で他のすべてのゲーム装置(ネットワーク子機)に送信する方法が採られている。このような通信ゲームを行うゲームシステムでは、各ゲーム装置のプレイヤが受ける有利不利の偏りを無くすために、処理サイクルが所定の回数実行される度に、ネットワーク親機となるゲーム装置を順番に変更するようにしてある。
しかし、ネットワーク親機は常に1台であり、通信ゲームに参加するゲーム装置が増加すると、ネットワーク親機の処理負担も増大し、通信効率の低下を招いてしまう。
そこで、この実施例では、通信ゲームにおいて、複数のシーン(場面)を含む仮想空間における通信ゲームをプレイする場合に、シーン毎に、親機(以下、説明の都合上、「シーンホスト」という。)と子機(以下、説明の都合上、「シーンビジター」という。)とを決定し、各々のシーンホストによって処理を分担するようにしてある。つまり、ネットワーク親機のみに処理が集中するのを回避するのである。
図4は、システム100で実行される仮想ゲーム(通信ゲーム)の仮想空間200を2次元平面で表わした図解図である。たとえば、仮想空間200は、4つのシーン(シーン1,シーン2,シーン3,シーン4)を含む。ただし、図4に示す例では、システム100を構成する各ゲーム装置10(これ以降では、A,B,C,D,E,Fと表記して区別する場合がある。)を丸で示し、各シーンを区分する点線枠内に記載することにより、そのシーンにプレイヤとして参加していることを表現してある。上述したように、ゲーム装置A−Fは互いに通信可能である。また、図4では、分かり易くするために、4つのシーンをそれぞれ四角形で示してある。たとえば、或る街中のシーンや或る建物内のシーンなどが仮想空間200内に設けられるのである。ただし、シーンは、ゲームの種類などにより様々であり、ゲームのプログラムや開発者が設計する事項である。
図4に示す例では、シーン1には、ゲーム装置A、ゲーム装置Bおよびゲーム装置Dが参加している。また、シーン2には、ゲーム装置Cが参加している。さらに、シーン3には、ゲーム装置Eおよびゲーム装置Fが参加している。そして、シーン4には、いずれのゲーム装置10も参加していない。また、シーン1では、ゲーム装置Aがシーンホスト(図面では、単に「ホスト」と表記する。以下、同じ。)であり、ゲーム装置Bおよびゲーム装置Dがシーンビジター(図面では、単に「ビジター」と表記する。以下、同じ。)である。シーン2では、ゲーム装置Cがシーンホストであり、シーンビジターは存在しない。シーン3では、ゲーム装置Eがシーンホストであり、ゲーム装置Fがシーンビジターである。
この図4に示す例を用いて、各シーンでシーンホストが設定される方法やゲーム装置10(シーンホストまたはシーンビジター)が異なるシーンに移動する方法について説明する。ただし、ゲーム装置10が無線通信(通信ゲーム)を開始した当初において、所望のシーンに参加する場合の方法(処理)は、ゲーム装置10が或るシーンから他のシーンに移動する場合と同様の処理となるため、その詳細な説明は省略することにする。
図5は或るシーンに存在するシーンビジターが他のシーンに移動する場合の一例を示す図解図である。具体的には、シーン1のシーンビジターとしてのゲーム装置Dがシーン2に移動する例が示される。つまり、図5(A)はシーン1のシーンビジターとしてのゲーム装置Dがシーン2に移動する前の状態を示し、図5(B)はそのゲーム装置Dがシーン2に移動した後の状態を示す。
なお、これ以降では、簡単のため、シーン1のシーンホストをシーン1ホストと呼び、シーン1のシーンビジターをシーン1ビジターと呼ぶことがある。説明は省略するが、他のシーン(この実施例では、シーン2,シーン3,シーン4)のシーンホストおよびシーンビジターについても同様である。
図5(A)および図5(B)に示すように、シーン2には、シーン2ホストとしてのゲーム装置Cが存在するため、つまり他のゲーム装置10が既に存在するため、ゲーム装置Dはシーンビジターとしてシーン2に参加することになる。つまり、ゲーム装置Dは、シーン2に移動したとき、シーンビジターとして設定される。後で詳細に説明するが、ゲーム装置10が他のシーンに移動(参加)する場合には、現在参加しているシーンにおける役割(シーンホストまたはシーンビジター)についての設定は解除される。つまり、後述するシーン情報が更新される。
なお、ゲーム装置10が通信ゲームを開始した当初において、所望のシーンに参加する場合に、当該所望のシーンに他のゲーム装置10が既に参加している場合も同様に、シーンビジターとして設定される。
図6は或るシーンに存在するシーンビジターが他のシーンに移動する場合の他の例を示す図解図である。具体的には、シーン1ビジターとしてのゲーム装置Dがシーン4に移動する例が示される。図6(A)はシーン1ビジターとしてのゲーム装置Dがシーン4に移動する前の状態を示し、図6(B)はそのゲーム装置Dがシーン4に移動した後の状態を示す。この実施例では、移動後のシーンに他のゲーム装置10(シーンホスト)が存在しない場合には、移動したゲーム装置10をシーンホストに設定するようにしてある。したがって、ゲーム装置Dは、シーン4に移動したとき、シーンホストとして設定される。
なお、ゲーム装置10が通信ゲームを開始した当初において、所望のシーンに参加する場合に、当該所望のシーンに他のゲーム装置10が全く参加していない場合に、シーンホストとして設定される。
図7は或るシーンのシーンホストが他のシーンに移動する場合の一例を示す図解図である。具体的には、シーン1ホストとしてのゲーム装置Aがシーン2に移動する例が示される。図7(A)はシーン1ホストとしてのゲーム装置Aがシーン2に移動する前の状態を示し、図7(B)はそのゲーム装置Aがシーン2に移動した後の状態を示す。かかる場合には、上述のシーンビジターが移動する場合とは異なり、移動前のシーンにおいて他のゲーム装置10にシーンホストの設定を要求する手続き(処理)が必要となる。これは、シーンビジターが移動する場合と同様に、シーンホストがそのまま他のシーンに移動してしまうと、移動前のシーンにシーンホストが存在しないことになり、当該移動前のシーンにおけるゲーム処理が滞ってしまうためである。つまり、不具合(不都合)が発生する。
ただし、移動前のシーンにシーンホストのみしか存在しない場合には、その後のゲーム処理が滞ることがなく、また、シーンビジターも存在しないため、シーンホストの設定を要求する手続きは不要である。
図7(A)および図7(B)に示すように、シーン1ホストすなわちゲーム装置Aがシーン2に移動する場合には、ゲーム装置Aは、シーン2に移動する前に、シーン1ビジターとしてのゲーム装置Bにシーンホストになることを要求する。つまり、ゲーム装置Aは、ゲーム装置Bにシーンホストへの設定変更を要求する。
ここで、図7(A)に示す例では、シーンビジターとしてのゲーム装置Bおよびゲーム装置Dのうち、ゲーム装置Bにシーンホストの設定を要求するようにしてある。これは、通信IDを用いて所定のルールに従って、シーンホストへの設定変更を要求するシーンビジターを選択するようにしてあるためである。この実施例では、分かり易くするために、ゲーム装置10の各々を識別するためのアルファベットと通信IDとが同一であるものとする。通信IDは、ネットワーク親機が各ネットワーク子機に対して割り当てる。たとえば、ネットワーク親機は、接続要求を受信した順番で、順次(アルファベット順に)通信IDを割り当てる。したがって、最初にネットワーク親機に接続要求を送信したネットワーク子機には、通信IDとして「A」が割り当てられる。この次にネットワーク親機に接続要求を送信したネットワーク子機には、通信IDとして「B」が割り当てられる。そして、その次にネットワーク親機に接続要求を送信したネットワーク子機には、通信IDとして「C」が割り当てられる。これ以降に、ネットワーク親機に接続要求を送信したネットワーク子機についても同様である。
この実施例では、或るシーンから他のシーンに移動しようとするシーンホストが、小さい(アルファベット順の番号が若い)通信IDの割り当てられたシーンビジターに、シーンホストになるように要求するのである。したがって、図7(A)に示すように、ゲーム装置Aはゲーム装置Bにシーンホストへの設定変更を要求しているのである。
ただし、アルファベット順の番号が若い通信IDのネットワーク子機を選択する方法に限定する必要はなく、ランダムにネットワーク子機を選択するようにしてもよい。つまり、所定のルールは様々であり、ゲームのプログラマや開発者設計する事項である。
そして、図7(B)に示すように、ゲーム装置Bはシーン1ホストになり、また、ゲーム装置Aはシーン2に移動する。このゲーム装置Aのシーン2への移動については、図5(A)および図5(B)に示したように、ゲーム装置Dがシーン2に移動する場合と同じであるため、重複した説明は省略する。
図8は或るシーンのシーンホストが他のシーンに移動する場合の他の例を示す図解図である。具体的には、シーン1ホストとしてのゲーム装置Aがシーン4に移動する例が示される。図8(A)はシーン1ホストとしてのゲーム装置Aがシーン4へ移動する前の状態を示し、図8(B)はそのゲーム装置Aがシーン4に移動した後の状態を示している。この図8に示す例では、移動後のシーン4において、ゲーム装置Aがシーンホストとして設定される以外は、図7に示した場合と同じであるため、重複した説明は省略する。つまり、図7(A)を用いて説明したのと同様に、ゲーム装置Aは、移動前のシーン1においてゲーム装置Bにシーンホストへの設定変更を要求して、シーン4に移動する。また、ゲーム装置Aが移動後のシーン4においてシーンホストとして設定されるのは、図6を用いて説明した場合と同じである。
このように、ゲーム装置10は、各シーン(仮想ゲーム空間200内)を自由に移動し、各シーンにおいて、シーンホストやシーンビジターとして設定され、それぞれの役割を果たしながら、通信ゲームを実行する。
図9〜図13は、通信ゲームにおけるゲームデータ(ゲーム全体データ)の更新処理を説明するための図解図である。この図9〜図13においては、簡単のため、仮想空間200にシーン1およびシーン2のみが含まれる場合について示してある。また、シーン1には、ゲーム装置Aとゲーム装置Bとが参加し、ゲーム装置Aがシーン1ホストであり、ゲーム装置Bがシーン1ビジターである。シーン2には、ゲーム装置Cおよびゲーム装置Dとが参加し、ゲーム装置Cがシーン2ホストであり、ゲーム装置Dがシーン2ビジターである。さらに、図9〜図13では、各ゲーム装置A〜Dに内蔵されるRAM48に記憶されたゲーム全体データ(シーン共有データおよびシーン固有データ)のみを示してある。なお、RAM48の内容については、後で詳細に説明するため、ここでは省略する。
図9は、シーン1において、シーン1ビジターとしてのゲーム装置Bがシーン1ホストとしてのゲーム装置Aにゲームデータ(シーン共有データ)の書き換え(変更)を要求した状態を示す。ここで、ゲーム全体データは、シーン共有データとシーン固有データとを含む。シーン共有データは、仮想ゲーム(通信ゲーム)をプレイしている(通信ゲームに参加している)すべてのプレイヤ(ゲーム装置10)と共有するデータである。各ゲーム装置10は、自身(自機)がどのシーンに参加しているかに拘わらず、すべてのシーンについてのシーン共有データをメモリ(RAM48)に保持しており、このシーン共有データは、或るシーンにいずれのゲーム装置10も参加していなくても保存される。つまり、通信ゲームの終了時には、セーブされるデータである。この実施例では、メモリカード28のRAM28bにセーブされる(図3参照)。また、シーン固有データは、同一シーンでプレイしているプレイヤ(ゲーム装置10)とのみ共有するデータである。各ゲーム装置10は、自機が現在参加しているシーンのシーン固有データをRAM48に保持しており、このシーン固有データは、別のシーンに移動する場合に破棄される。
したがって、たとえば、ロールプレイングゲームのような仮想ゲームの町並みのシーンでは、或る商店に陳列されている商品の情報はシーン共有データである。つまり、或る商店において、どんな商品が陳列されているのかは、いずれのプレイヤが見ても同じ状態であり、また、誰かが商品を購入した場合には、その後に当該商店を訪れても商品は無くなった状態である必要がある。これに対して、或る商店の店主のようなノンプレイヤオブジェクトの状態(現在位置や動作など)はシーン固有データである。つまり、ノンプレイヤオブジェクトがどこに居て、何をしているのかは、そのシーンに参加しているプレイヤには同じように見える必要はあるが、他のシーンに参加しているプレイヤには何ら関係がない。また、そのシーンから誰も居なくなった後に、誰かが再びそのシーンに参加した場合に、つまりその商店を誰かが訪れた場合に、シーン固有データが初期化されて、ノンプレイヤオブジェクトが別の位置に移動していたとしても特に違和感がない。
図9に戻って、ゲーム装置Bがシーン共有データに含まれるシーン1データ(変数a1)の変更をゲーム装置Aに要求すると、これに応じて、ゲーム装置Aは、図10に示すように、自機のRAM48に保持されている変数a1を書き換える。ここでは、変数a1の値を「0」から「1」に書き換える。つまり、シーン共有データが更新される。そして、ゲーム装置Aは、他のすべてのゲーム装置B、ゲーム装置Cおよびゲーム装置Dに、変数a1の更新を指示する。これは、上述したように、シーン共有データは、通信ゲームに参加しているすべてのゲーム装置10の間で共有する必要があるからである。したがって、図11に示すように、ゲーム装置B、ゲーム装置Cおよびゲーム装置Dにおいても、変数a1が書き換えられ、つまり、シーン共有データが更新される。
なお、図示は省略するが、シーンホストがシーン共有データを更新した場合には、当該シーン共有データの更新が他のすべてのゲーム装置10に指示されるだけである。
また、図12は、シーンホストがシーン固有データの更新をシーンビジターに指示した状態を示す図解図である。具体的には、シーン1において、シーン1ホストとしてのゲーム装置Aがシーン1データ(変数n1)の更新をシーン1ビジターとしてのゲーム装置Bに指示した状態を示す。ただし、ゲーム装置Aは自身のRAM48に保持するシーン固有データの更新をした時に、ゲーム装置Bにその更新を指示する。これに応じて、図13に示すように、ゲーム装置Bが自身のRAM48に保持される変数n1を更新する。ここでは、変数n1の値が「0」から「1」に書き換えられる。つまり、シーン固有データが更新される。
なお、シーン固有データは、そのシーンにおけるシーンホストがランダム(乱数)に決定(発生および更新)するため、シーンビジターがシーン固有データの更新をシーンホストに要求することはない。また、上述したように、シーン固有データは、他のシーンに参加しているゲーム装置10には何ら関係ないため、他のシーンに参加しているゲーム装置10にその更新が指示されることもない。
このようにして、通信ゲームにおいては、各シーンに存在するシーンホストによってゲーム全体データの更新処理が実行される。つまり、従来のゲームシステムにおいて、ネットワーク親機のみが実行していた処理が各シーンホストによって分担される。ただし、いずれのゲーム装置10も参加していないシーンにおいては、シーンホストは存在しない。
なお、当然ではあるが、ネットワーク親機がシーンホストとしてシーンに参加している場合には、ゲーム全体データの更新処理を分担する必要がある。
図14は、ゲーム装置10に内蔵されるRAM48のメモリマップの一例を示す図解図である。図14に示すように、RAM48は、通信ID記憶領域70、ゲームプログラム記憶領域72、画像データ記憶領域74、ゲーム全体データ記憶領域76、シーン情報記憶領域78およびその他の領域80を含む。
通信ID記憶領域70は、ゲーム装置10に割り当てられた通信IDを記憶する領域である。したがって、この通信ID記憶領域70は、通信ゲームを行う度に書き換えられる。ただし、上述したように、ネットワーク親機がネットワーク子機に通信IDを割り当てるため、ネットワーク親機には、通信IDは割り当てられない。このため、通信ゲームに参加しているゲーム装置10であって、通信IDが記述されていないものがネットワーク親機であると識別することができる。
ゲームプログラム記憶領域72は、任意のゲーム(この実施例では、通信ゲームである。以下、同じ。)を実行するためのゲームプログラムを記憶する。ここで、ゲームプログラムは、ゲーム全体処理プログラム、画像表示プログラム、音(音楽)再生プログラム、バックアッププログラムなどで構成される。ただし、この実施例では、通信ゲームを実行するようにしてあるため、ゲームプログラムには、通信プログラムも含まれる。画像データ記憶領域74は、任意のゲームに登場する、プレイヤオブジェクト、敵オブジェクトなどのノンプレイヤオブジェクト、アイテムオブジェクト、背景オブジェクトを描画(生成および表示)するための画像データ(ポリゴンデータやテクスチャデータなど)を記憶する。
ゲーム全体データ記憶領域76は、シーン共有データ記憶領域760とシーン固有データ記憶領域762とによって構成される。シーン共有データ記憶領域760には、シーン共有データ、すなわち、シーン1データ760a(変数a1,b1,…)、シーン2データ760b(変数a2,b2,…)、…が記憶される。また、シーン固有データ記憶領域762には、現在のシーンについてのシーン固有データ、すなわち、シーンxデータ762a(変数nx,ox,…)が記憶される。ただし、この実施例では、変数xは、1〜4の整数であり、現在参加しているシーン番号を示す。このように、シーン固有データについては、全てのシーンについての固有データを記憶する必要はなく、自機が参加しているシーンの固有データのみを記憶すればよいので、メモリ(RAM48)の使用量ないし容量を節約することができる。
シーン情報記憶領域78には、シーン情報を記憶するための領域である。具体的には、各ゲーム装置10についてのシーン番号データ780および各ゲーム装置10についてのシーンホストデータ782が記憶される。シーン番号データ780は、各ゲーム装置10に対応して、各ゲーム装置10が現在参加しているシーンのシーン番号(識別情報)を示すデータである。シーンホストデータ782は、各ゲーム装置10がシーンホストとして設定されているか、シーンビジターとして設定されているかを示すデータ(フラグ)である。たとえば、シーンホストデータ782は、通信ゲームに参加しているゲーム装置10と同じ或いはそれ以上の数のビット数を有するレジスタで構成され、各ビットが各ゲーム装置10に対応する。そして、ゲーム装置10がシーンホストとして設定されている場合には、フラグ(以下、「シーンホストフラグ」という。)はオンであり、対応するビットにはデータ値「1」が設定される。一方、ゲーム装置10がシーンビジターとして設定されている場合には、シーンホストフラグはオフであり、対応するビットにはデータ値「0」が設定される。
その他の領域80は、CPUコア42のワーキング領域や他の記憶領域として用いられる。たとえば、ゲームに必要な音(音楽)を出力するための音(音楽)データが記憶される。
具体的には、ゲーム装置10のCPUコア42が以下に示すようなフロー図を処理することにより、通信ゲームに参加したり、シーンを移動したり、ゲーム全体データを更新したりする。図15および図16は、ゲーム装置10(自機)がネットワーク親機である場合における通信処理を示すフロー図である。なお、自機がネットワーク親機か否かの判断は、通信IDが割り当てられているか否かで判断することができる。以下、同じである。
図15に示すように、CPUコア42は、ネットワーク親機の場合における通信処理を開始すると、ステップS1で、メモリカード28からシーン共有データを読み出して、RAM48に書き込む。続くステップS3では、ゲーム開始時のシーンのシーン固有データおよびシーン情報を作成して、RAM48に書き込む。ここで、シーン固有データを作成するとは、具体的には、CPUコア42が、シーン固有データに含まれる各変数(またはフラグ)の値をランダムに設定する。また、CPUコア42は、シーン番号データ780として、自機の識別情報に対応してゲーム開示時のシーン番号を記述するとともに、シーンホストデータ782として、自機に対応するビットにデータ値「1」を設定する。つまり、自機のシーンホストフラグをオンする。
次のステップS5では、後述する、シーンホストの場合におけるゲームデータ更新処理(図19および図20参照)を実行し、ステップS7で、ネットワーク親機としての通信開始処理を実行する。続くステップS9では、ネットワーク子機(他のゲーム装置10)からの接続を待機し、ステップS11で、ネットワーク子機(他のゲーム装置10)からの接続要求があるかどうかを判断する。ステップS11で“NO”であれば、つまりネットワーク子機からの接続要求がなければ、そのまま図16に示すステップS21に移行する。一方、ステップS11で“YES”であれば、つまりネットワーク子機からの接続要求があれば、ステップS13で、通信ゲームを一時停止する。
この実施例では、簡単のため、通信ゲームにおけるゲームデータの更新処理のみを後で説明するが(図19〜図22参照)、厳密には、CPUコア42は、通信処理と並行して、通信ゲームのゲーム処理も実行しているのである。したがって、ステップS13では、その通信ゲームを一時停止しているのである。
なお、簡単に説明すると、通信ゲーム処理では、プレイヤの指示に従って、ゲームオブジェクトに任意のアクションを実行させるアニメーション処理を実行したり、またその様子を表現したりゲーム世界を表示するための画像処理を実行したり、ゲームに必要な音の再生処理を実行したりする。
次のステップS15では、ネットワーク子機と接続する。ここで、本実施例は親機と子機とが微弱電波によって無線通信をしながらゲームを進行させる無線通信ゲームシステムであるので、本来的には「接続」の用語を用いるべきではない。しかしながら、親機となる携帯ゲーム装置と子機となる携帯ゲーム装置との間での通信可能な連係状態を表す用語として、有線通信の場合の用語を借りて、便宜上「接続」と表現することとしてある。
なお、このような接続処理(後述するネットワーク子機として接続処理も同じ。)の一例は、本件出願人が先に出願し、既に出願公開された特開2004−135778号公報に詳細に開示されており、また、このような接続処理は、本願発明の本質的な内容ではないため、その説明は省略することにする。
続くステップS17で、シーン共有データおよびシーン情報を接続したネットワーク子機に送信し、ステップS19で、通信ゲームを再開して、ステップS21に進む。図16に示すように、ステップS21では、ゲーム終了かどうかを判断する。具体的には、プレイヤからゲーム終了の指示が入力されたり、ゲームオーバーになってしまったりしたかどうかを判断する。ステップS21で“YES”であれば、つまりゲーム終了であれば、そのままネットワーク親機である場合における通信処理を終了する。
なお、この実施例では、ネットワーク親機が通信ゲームを終了すると、ネットワーク子機においても通信ゲームが終了(強制終了)される。
しかし、ステップS21で“NO”であれば、つまりゲーム終了でなければ、ステップS23で、後述する、シーン情報更新処理(図23参照)を実行する。続くステップS25では、自機が他のシーンへ移動したかを判断する。ここでは、シーン情報に含まれるシーン番号データ780を参照して、自機についてのシーン番号が更新されたかどうかを判断する。ステップS25で“NO”であれば、つまり自機が他のシーンへ移動していなければ、ステップS27で、自機がシーンホストであるかどうかを判断する。ここでは、シーンホストデータ782を参照して、自機のシーンホストフラグがオンであるかどうかを判断する。ステップS27で“NO”であれば、シーンビジターであれば、そのままステップS35に移行する。一方、ステップS27で“YES”であれば、つまり自機がシーンホストであれば、そのままステップS39に移行する。
また、ステップS25で“YES”であれば、つまり自機がシーン移動していれば、ステップS29で、自機がシーンホストであるかどうかを判断する。この判断手法は、ステップS27の場合と同じである。ステップS29で“NO”であれば、つまり自機がシーンビジターであれば、ステップS31で、シーンホストから移動先のシーンのシーン固有データを受信し、ステップS33で、受信したシーン固有データをRAM48に書き込む。そして、ステップS35で、後述する、シーンビジターの場合におけるゲームデータ更新処理(図21および図22)を実行して、図15に示したステップS7に戻る。
しかし、ステップS29で“YES”であれば、つまり自機がシーンホストであれば、ステップS37で、移動先のシーンのシーン固有データを作成して、RAM48に書き込む。そして、ステップS39で、後述する、シーンホストの場合におけるゲームデータ更新処理を実行して、ステップS7に戻る。
図17および図18は、ゲーム装置10(自機)がネットワーク子機である場合における通信処理を示すフロー図である。図17に示すように、CPUコア42はネットワーク子機の場合における通信処理を開始すると、ステップS51で、子機として通信開始処理を実行する。次のステップS53では、ネットワーク親機をサーチし、ステップS55で、ネットワーク親機が見つかったかどうかを判断する。ステップS55で“NO”であれば、つまりネットワーク親機が見つからなければ、そのままステップS53に戻って、ネットワーク親機のサーチを継続する。一方、ステップS55で“YES”であれば、つまりネットワーク親機が見つかれば、ステップS57で、ネットワーク親機と接続する。
なお、上述したように、このような通信処理は、特開2004−135778号公報に詳細に開示されている。
また、この実施例では、ステップS55で、ネットワーク親機が見つからない場合には、ステップS53に戻って、ネットワーク親機をサーチし続けるようにしてある。しかし、電池(バッテリ)の無駄な浪費を削減するために、たとえば、ネットワーク親機のサーチ時間が一定時間を超えた場合には、ネットワーク親機が見つからない旨を通知して、通信処理を終了する、またはネットワーク親機としての通信処理(図15および図16)を開始するようにしてもよい。
上述したように、ネットワーク親機と接続すると、ステップS59で、ネットワーク親機からシーン共有データおよびシーン情報を受信し、ステップS61で、受信したシーン共有データおよびシーン情報をRAM48に書き込む。続いて、ステップS63では、ゲーム開始時のシーンにシーンホストが存在するかどうかを判断する。ここでは、シーン情報に含まれるシーン番号データ780を参照して、自機が参加するシーンに、他のゲーム装置10が参加しているかどうかを判断する。
ステップS63で“YES”であれば、つまりゲーム開始時のシーンにシーンホストが存在すれば、シーンビジターとして当該シーンに参加すべく、ステップS65で,シーンホストからそのシーンのシーン固有データを受信し、ステップS67で、受信したシーン固有データをRAM48に書き込む。そして、ステップS69で、後述する、シーンビジターの場合におけるゲームデータ更新処理を実行し、図18に示すステップS75に進む。
一方、ステップS63で“NO”であれば、つまりゲーム開始時のシーンにシーンホストが存在しなければ、シーンホストとして当該シーンに参加すべく、ステップS71で、ゲーム開始時のシーンのシーン固有データを作成して、RAM48に書き込む。そして、ステップS73で、後述する、シーンホストとしてゲーム処理を実行し、ステップS75に進む。
なお、図示は省略するが、シーンホストまたはシーンビジターとして、シーンに参加するとき、シーン情報すなわちシーン番号データ780およびシーンホストデータ782に自機の内容を追加する。つまり、自機が参加するシーンの番号を、自機の識別情報に対応して記述したデータをシーン番号データ780に追加する。また、シーンホストとして参加する場合には、自機についてのシーンホストフラグをオンする。
図18に示すように、ステップS75では、ゲーム終了かどうかを判断する。ここでは、プレイヤによってゲーム終了の指示が与えられたり、ゲームオーバーになったり、ネットワーク親機が通信ゲームを終了したりしたかどうかを判断する。ステップS75で“YES”であれば、つまりゲーム終了であれば、そのままネットワーク子機の場合における通信処理を終了する。一方、ステップS75で“NO”であれば、つまりゲーム終了でなければ、ステップS77で、後述するシーン情報更新処理を実行し、ステップS79で、自機が他のシーンへ移動したどうかを判断する。この判断手法は、上述したステップS25の場合と同様である。
ステップS79で“NO”であれば、つまり他のシーンに移動していなければ、ステップS81で、自機がシーンホストであるかどうかを判断する。ステップS81で“NO”であれば、つまり自機がシーンビジターであれば、そのままステップS89に移行する。しかし、ステップS81で“YES”であれば、つまり自機がシーンホストであれば、そのままステップS93に進む。
一方、ステップS79で“YES”であれば、つまり他のシーンへ移動していれば、ステップS83で、自機がシーンホストであるかどうかを判断する。この判断手法は、上述したステップS25の処理と同じである。ステップS83で“NO”であれば、つまり自機がシーンビジターである場合には、ステップS85で、シーンホストから移動先のシーンのシーン固有データを受信し、ステップS87で、受信したシーン固有データをRAM48に書き込む。そして、ステップS89で、後述する、シーンビジターの場合におけるゲームデータ更新処理を実行して、ステップS75に戻る。
また、ステップS83で“YES”であれば、つまり自機がシーンホストである場合には、ステップS91で、移動先のシーンのシーン固有データを作成して、RAM48に書き込む。そして、ステップS93で、後述する、シーンホストの場合におけるゲームデータ更新処理を実行し、ステップS75に戻る。
図19および図20は、シーンホストの場合におけるゲームデータ更新処理(上述したステップS5,S39,S73,S93)である。このゲーム処理は、ネットワーク親機またはネットワーク子機に拘わらず、シーンにおける親機(シーンホスト)である場合に実行される。図19に示すように、CPUコア42は、シーンホストの場合におけるゲームデータ更新処理を開始すると、ステップS101で、シーンビジターからシーン共有データ(ここでは、説明の便宜上、「変数a1」とする。)のロックを要求されたかどうかを判断する。
ステップS101で“NO”であれば、つまり変数a1のロックを要求されていなければそのまま図20に示すステップS125に進む。しかし、ステップS101で“YES”であれば、つまり変数a1のロックを要求されれば、ステップS103で、変数a1がロックされているかどうかを判断する。つまり、今回変数a1のロックを要求してきたシーンビジターとは異なるシーンビジターの要求によって既に変数a1がロックされているかどうかを判断するのである。
ステップS103で“YES”であれば、つまり変数a1がロックされていれば、ステップS105で、今回変数a1のロックを要求してきたシーンビジターの要求を拒否して、ステップS125に進む。つまり、ステップS105では、今回変数a1のロックを要求してきたシーンビジターに要求拒否を通知する。一方、ステップ103で“NO”であれば、つまり変数a1がロックされていなければ、ステップS107で、変数a1をロックして、ステップS109で、他のシーンビジターが同時に変数a1のロックを要求しているかどうかを判断する。
ステップS109で“YES”であれば、つまり、他のシーンビジターが同時に変数a1のロックを要求している場合には、ステップS111で、通信IDの小さいシーンビジターに変数a1をロックしたことを通知し、ステップS113で、他のシーンビジターに要求拒否の通知をして、ステップS117に進む。一方、ステップS109で“NO”であれば、つまり他のシーンビジターが同時に変数a1のロックを要求していない場合には、ステップS115で、シーンビジターに変数a1をロックしたことを通信して、ステップS117に進む。
ステップS117では、シーンビジターから変数a1の変更要求を受信する。ただし、このシーンビジターは、変数a1のロックを通知したシーンビジターである。続くステップS119では、自機のシーン共有データ内の変数a1を変更し、ステップS121で、ゲームに参加しているすべてのゲーム装置10に変数a1の変更を指示する。そして、ステップS123で、変数a1のロックを解除し、ステップS125に進む。
図20に示すステップS125では、自機のシーン固有データ(ここでは、説明の便宜上、「変数n1」とする。)を変更する。続くステップS127では、同じシーン内の全てのシーンビジターに変数n1の変更を指示する。そして、ステップS129では、他のシーンのシーンホストからシーン共有データ(ここでは、説明の便宜上、「変数a2」とする。)の変更指示を受信したかどうかを判断する。ステップS129で“NO”であれば、つまり変数a2の変更指示を受信していなければ、そのまま、シーンホストの場合におけるゲームデータ更新処理をリターンする。しかし、ステップS129で“YES”であれば、つまり変数a2の変更指示を受信すれば、ステップS131で、変数a2を変更して、シーンホストの場合におけるゲームデータ更新処理をリターンする。
図21および図22は、シーンビジターの場合におけるゲームデータ更新処理(上述したステップS35,S69,S89)を示すフロー図である。このゲーム処理は、ネットワーク親機またはネットワーク子機に拘わらず、シーンにおける子機(シーンビジター)である場合に実行される。図21に示すように、CPUコア42は、シーンビジターの場合におけるゲームデータ更新処理を開始すると、ステップS141で、変数a1すなわちシーン共有データを書き換えるかどうかを判断する。つまり、ゲームの進行により、シーン共有データ(ここでは、「変数a1」)を書き換える必要性があるかどうかを判断する。ステップS141で“NO”であれば、つまり変数a1を書き換えない場合には、そのままステップS151に進む。しかし、ステップS141で“YES”であれば、つまり変数a1を書き換える場合には、ステップS143で、シーンホストへ変数a1のロックを要求する。
続くステップS155では、シーンホストからロック通知を受信したかどうかを判断する。ステップS145で“YES”であれば、つまりシーンホストからロック通知を受信すれば、ステップS147で、シーンホストへ変数a1の変更を要求して、ステップS151に進む。しかし、ステップS145で“NO”であれば、つまりシーンホストからロック通知がなければ、ステップS149で、シーンホストから要求拒否を受信したかどうかを判断する。ステップS149で“NO”であれば、つまり要求拒否を受信していなければ、そのまま図22に示すステップS155に進む。しかし、ステップS149で“YES”であれば、つまり要求拒否を受信すれば、ステップS151に進む。
ステップS151では、変数a1の変更指示を受信したかどうかを判断する。つまり、他のシーンのシーンホスト(他のゲーム装置10)から変数a1の変更指示があるかどうかを判断する。ステップS151で“NO”であれば、つまり変数a1の変更指示がなければ、そのままステップS155に進む。しかし、ステップS151で“YES”であれば、ステップS153で、自機のシーン共有データ内の変数a1を変更して、ステップS155に進む。
図22に示すように、ステップS155では、シーンホストから変数n1すなわちシーン固有データの変更指示を受信したかどうかを判断する。ステップS155で“NO”であれば、つまり変数n1の変更指示を受信していなければ、そのままステップS159に進む。しかし、ステップS155で“YES”であれば、つまり変数n1の変更指示を受信すれば、ステップS157で、自機のシーン固有データ内の変数n1を変更し、ステップS159に進む。
ステップS159では、他のシーン(ここでは、シーン2)のシーンホストから変数a2の変更指示を受信したかどうかを判断する。ステップS159で“NO”であれば、つまり変数a2の変更指示を受信していなければ、そのまま、シーンビジターの場合におけるゲームデータ更新処理をリターンする。しかし、ステップS159で“YES”であれば、つまり変数a2の変更指示を受信すれば、ステップS161で、自機のシーン共有データ内の変数a2を変更して、シーンビジターの場合におけるゲームデータ更新処理をリターンする。
図23は、上述したステップS23およびステップS77におけるシーン情報更新処理を示すフロー図である。この図23を参照して、CPUコア42は、シーン情報更新処理を開始すると、ステップS171で、自機が他のシーンへ移動したかどうかを判断する。ステップS171で“YES”であれば、つまり自機が他のシーンへ移動すれば、ステップS175で、シーン情報すなわちシーン番号データ780およびシーンホストデータ782の少なくとも一方を更新する。以下、同じ。しかし、ステップS171で“NO”であれば、つまり自機が他のシーンへ移動していなければ、ステップS173で、自機がシーンホストに変わったかどうかを判断する。
ステップS173で“NO”であれば、つまりシーンホストに変わっていなければ、図24に示すステップS187に進む。しかし、ステップS173で“YES”であれば、つまりシーンホストに変わっていれば、シーンホストデータ782を更新すべく、ステップS175に進む。
ステップS175でシーン情報を更新すると、ステップS177で、自機がネットワーク親機であるかどうかを判断する。ステップS177で“YES”であれば、つまり自機がネットワーク親機であれば、ステップS179で、すべてのネットワーク子機に、シーン情報を送信して、シーン情報更新処理をリターンする。一方、ステップS177で“NO”であれば、つまり自機がネットワーク子機であれば、ステップS181で、ネットワーク親機にシーン情報を送信する。
続いて、ステップS183では、ネットワーク親機からシーン情報を受信したかどうかを判断する。ステップS183で“NO”であれば、つまりネットワーク親機からシーン情報を受信しなければ、そのままシーン情報更新処理をリターンする。しかし、ステップS183で“YES”であれば、つまりネットワーク親機からシーン情報を受信すれば、ステップS185で、シーン情報を更新して、シーン情報更新処理をリターンする。
上述したように、ステップS173で“NO”であれば、図24に示すステップS187で、自機がネットワーク親機であるかどうかを判断する。ステップS187で自機がネットワーク親機でなければ、そのまま図23に示したステップS183に進む。しかし、ステップS187で“YES”であれば、つまり自機がネットワーク親機であれば、ステップS189で、ネットワーク子機からシーン情報を受信したかどうかを判断する。ステップS189で“NO”であれば、つまりネットワーク子機からシーン情報を受信していなければ、図23に示したように、シーン情報更新処理をリターンする。一方、ステップS189で“YES”であれば、つまりネットワーク子機からシーン情報を受信すれば、ステップS191で、シーン情報を更新して、図23に示したステップS179に戻る。
図25および図26は、シーン移動処理を示すフロー図である。このシーン移動処理は、ネットワーク親機またはネットワーク子機に拘わらず共通である。また、シーン移動処理は、システム100を構成する各ゲーム装置10で実行される通信ゲームにおいて、ユーザによってシーン移動の指示が与えられたり、所定のイベントが発生したりすることにより、割り込みで実行される。したがって、このシーン移動処理の実行中では、通信ゲームの処理は、一時停止される。
図25を参照して、CPUコア42は、シーン移動処理を開始すると、ステップS201で、自機がネットワーク親機であるかどうかを判断する。ステップS201で“YES”であれば、つまり自機がネットワーク親機であれば、そのまま図26に示すステップS207に進む。しかし、ステップS201で“NO”であれば、つまり自機がネットワーク子機であれば、ステップS203で、ネットワーク親機にシーン切替を要求する。そして、ステップS205で、シーン切替許可を受信したかどうかを判断する。ステップS205で“NO”であれば、つまりシーン切替許可を受信していなければ、同じステップS205に戻って、シーン切替許可の受信を待機する。図示は省略するが、後述するように、シーン切替許可を受信しない場合には、シーン切替待機を受信する。したがって、ステップS205に戻るのである。一方、ステップS205で“YES”であれば、つまりシーン切替許可を受信すれば、ステップS207に進む。
図26に示すように、ステップS207では、自機が現在のシーンのシーンホストかどうかを判断する。ステップS207で“NO”であれば、つまり自機が現在のシーンのシーンビジターであれば、そのままステップS215に進む。一方、ステップS207で“YES”であれば、つまり自機が現在のシーンのシーンホストであれば、ステップS209で、現在のシーンにシーンビジターが存在するかどうかを判断する。つまり、シーン情報に含まれるシーン番号データ780を参照して、自機のシーン番号と同じシーン番号のゲーム装置10が存在するかどうかを判断するのである。
ステップS209で“NO”であれば、つまり現在のシーンにシーンビジターが存在しない場合には、そのままステップS215に進む。しかし、ステップS209で“YES”であれば、つまり現在のシーンにシーンビジターが存在する場合には、ステップS211で、現在のシーンのシーンビジター(すべてのシーンビジター)に通信処理の一時停止を指示する。図示は省略するが、このとき、通信ゲームの一時停止も指示される。次のステップS213では、通信IDの最も小さいシーンビジターに現在のシーンのシーンホストになることを要求する。
続いて、ステップS215では、現在のシーンのシーン固有データをRAM48上から破棄し、ステップS217で、他のシーンに移動して、シーン移動処理をリターンする。
なお、図示は省略するが、シーンを移動する場合(シーンに参加する場合も同じ。)に、移動後のシーンに他のゲーム装置10が存在する場合には、自機をシーンビジターとして設定し、また、移動後のシーンに他のゲーム装置10が存在しない場合には、自機をシーンホストとして設定する。これは、上述したように、CPUコア42がシーン情報を更新することにより、設定される。
図27は、シーンホストがシーンから抜ける場合のシーンビジターの処理を示すフロー図である。この処理は、ゲーム装置10がシーンビジターである場合に、一定時間毎に実行する。図27を参照して、CPUコア42は、シーンホストがシーンから抜ける場合の処理を開始すると、ステップS231で、シーンホストから一時停止の指示を受信したかどうかを判断する。ステップS231で“NO”であれば、つまりシーンホストから一時停止の指示を受信していなければ、そのままシーンホストがシーンから抜ける場合の処理を終了する。
しかし、ステップS231で“YES”であれば、つまりシーンホストから一時停止の指示を受信すれば、ステップS233で、通信処理を一時停止する。また、このとき、通信ゲームの処理も一時停止する。次のステップS235では、シーンホストへ送信するデータをバッファに蓄積する。続くステップS237では、シーンホストになることを要求されたかどうかを判断する。ステップS237で“YES”であれば、つまりシーンホストになることを要求されれば、ステップS239で、シーンホストとして通信処理を再開する。このとき、通信ゲームも再開する。そして、ステップS241で、シーンビジターに通信処理の再開を指示し、ステップS243で、バッファに蓄積しているデータを処理し、シーンホストがシーンから抜ける場合の処理を終了する。
なお、ステップS239で、シーンホストとして通信処理を再開したとき、現在のシーンにシーンビジターが存在しない場合には、ステップS241の処理は実行されず、そのままステップS243の処理が実行される。
また、ステップS237で“NO”であれば、つまりシーンホストになることを要求されていなければ、ステップS245で、シーンホストから通信処理の再開指示を受信したかどうかを判断する。ステップS245で“NO”であれば、つまりシーンホストから通信処理の再開指示を受信していなければ、そのままステップS237に戻る。一方、ステップS245で“YES”であれば、つまりシーンホストから通信処理の再開指示を受信すれば、ステップS247で、シーンビジターとして通信処理を再開する。このとき、通信ゲームの処理も再開する。そして、ステップS249で、バッファに蓄積しているデータをシーンホストに送信して、シーンホストがシーンから抜ける場合の処理を終了する。
図28は、ネットワーク親機におけるシーン切替管理処理を示すフロー図である。つまり、ネットワーク親機は、図15および図16に示した通信処理および通信ゲームの処理に加えて、シーン切替管理処理を並列的に実行しているのである。図28を参照して、CPUコア42は、シーン切替処理を開始すると、ステップS261で、ネットワーク子機からシーン切替要求を受信したかどうかを判断する。ステップS261で“NO”であれば、つまりネットワーク子機からシーン切替要求を受信していなければ、そのままシーン切替処理を終了する。
しかし、ステップS261で“YES”であれば、つまりネットワーク子機からシーン切替要求を受信すれば、ステップS263で、他のネットワーク子機からシーン切替要求を同時に受信したかどうかを判断する。ただし、厳密に同時である場合のみならず、数μ秒程度のずれがある場合も含む。ステップS263で“NO”であれば、つまり他のネットワーク子機からシーン切替要求を同時に受信していなければ、ステップS265で、シーン切替要求のあったネットワーク子機にシーン切替許可を通知して、シーン切替管理処理を終了する。
また、ステップS263で“YES”であれば、つまり他のネットワーク子機からシーン切替要求を同時に受信すれば、ステップS267で、通信IDの小さいネットワーク子機に切替許可を通知し、ステップS269で、他のネットワーク子機にシーン切替待機を指示して、シーン切替管理処理を終了する。
この実施例によれば、仮想ゲーム空間に含まれるシーン毎にシーンホストを決定して、各シーンホストで処理を分担するようにするので、ネットワーク親機のみに処理負担が集中することがない。このため、通信するゲーム装置の数が増えた場合であっても、ネットワーク親機の処理負担が増大することがなく、通信効率が低下するのを防止することができる。また、シーン固有データについては、自機が参加しているシーンの固有データのみを記憶すればよいので、仮想ゲーム空間を構成するシーンの数が増えてもメモリ容量が著しく増加することがなく、メモリの効率化を図ることができる。
なお、この実施例では、表示器が一体的に形成されたゲーム装置を用いてシステムを構成する場合について示したが、表示器が別に設けられたゲーム装置によってシステムを構成する場合にも適用できる。
また、この実施例では、各ゲーム装置を無線接続するようにしたが、これに限定される必要はなく、有線接続するようにしてもよいし、インターネット網等を用いて接続するようにしてもよい。
さらに、ゲーム装置の構成は、上述の実施例の構成に限定されるべきでない。たとえば、LCDは1つでもよく、タッチパネルは2つのLCDのそれぞれに設けるようにしてもよい。さらに、左右2つのスピーカを設けるようにしてもよい。
図1はこの発明のゲームシステムを示す図解図である。 図2は図1実施例に示すゲーム装置の一例を示す図解図である。 図3は図2に示すゲーム装置の電気的な構成を示すブロック図である。 図4は図1実施例のゲームシステムでプレイする通信ゲームの仮想空間200をシーン毎に分けて示した平面図である。 図5は図1実施例のゲームシステムでプレイする通信ゲームにおいてシーンビジターがシーンを移動する様子の一例を示す図解図である。 図6は図1実施例のゲームシステムでプレイする通信ゲームにおいてシーンビジターがシーンを移動する様子の他の例を示す図解図である。 図7は図1実施例のゲームシステムでプレイする通信ゲームにおいてシーンホストがシーンを移動する様子の一例を示す図解図である。 図8は図1実施例のゲームシステムでプレイする通信ゲームにおいてシーンホストがシーンを移動する様子の他の例を示す図解図である。 図9は図1実施例のゲームシステムでプレイする通信ゲームにおいて、シーンビジターがシーン共有データの変更を要求する状態を示す図解図である。 図10は図1実施例のゲームシステムでプレイする通信ゲームにおいて、シーンホストが、図9に示したシーンビジターの要求に応じてシーン共有データを変更し、その後、シーン共有データの変更をすべてのゲーム装置に指示する状態を示す図解図である。 図11は図1実施例のゲームシステムでプレイする通信ゲームにおいて、図10に示したシーンホストの指示に応じてすべてのゲーム装置でシーン共有データが変更された状態を示す図解図である。 図12は図1実施例のゲームシステムでプレイする通信ゲームにおいて、シーンホストがシーンビジターにシーン固有データの変更を指示した状態を示す図解図である。 図13は図1実施例のゲームシステムでプレイする通信ゲームにおいて、図12に示したシーンホストの指示に応じてシーンビジターのシーン固有データが更新された状態を示す図解図である。 図14は図3に示すRAMのメモリマップを示す図解図である。 図15はネットワーク親機の通信処理の一部を示すフロー図である。 図16はネットワーク親機の通信処理の他の一部であり、図15に後続するフロー図である。 図17はネットワーク子機の通信処理の一部を示すフロー図である。 図18はネットワーク子機の通信処理の他の一部であり、図17に後続するフロー図である。 図19はシーンホストの場合におけるゲームデータ更新処理の一部を示すフロー図である。 図20はシーンホストの場合におけるゲームデータ更新処理の他の一部であり、図19に後続するフロー図である。 図21はシーンビジターの場合におけるゲームデータ更新処理の一部を示すフロー図である。 図22はシーンビジターの場合におけるゲームデータ更新処理の他の一部であり、図21に後続するフロー図である。 図23はシーン情報更新処理の一部を示すフロー図である。 図24はシーン情報更新処理の他の一部を示すフロー図である。 図25はシーン移動処理の一部を示すフロー図である。 図26はシーン移動処理の他の一部であり、図25に後続するフロー図である。 図27はシーンホストがシーンから抜ける場合のシーンビジターの処理を示すフロー図である。 図28はネットワーク親機のシーン切替管理処理を示すフロー図である。
符号の説明
10 …ゲーム装置
12,14 …LCD
16,16a,16b …ハウジング
20 …操作スイッチ
22 …タッチパネル
24 …スティック
28 …メモリカード
28a …ROM
28b,48 …RAM
32 …アンテナ
40 …電子回路基板
42 …CPUコア
50,52 …GPU
54 …I/F回路
56,58 …VRAM
60 …LCDコントローラ
64 …無線通信ユニット
100 …ゲームシステム

Claims (20)

  1. 通信機能を備えた複数のゲーム装置によって構成され、複数のシーンを含む仮想ゲーム空間内のいずれかのシーンに当該複数のゲーム装置の各々がプレイヤとして参加してプレイするゲームシステムであって、
    各々の前記ゲーム装置は、
    すべての前記ゲーム装置で共有すべき共有ゲームデータを記憶する共有ゲームデータ記憶手段、
    自機が参加している前記シーンのみで共有すべきシーン固有の固有ゲームデータを記憶する固有ゲームデータ記憶手段、
    参加するシーンに他の前記ゲーム装置が参加していないとき、自機を当該シーンの親機として設定する親機設定手段、
    参加するシーンに他の前記ゲーム装置が参加しているとき、自機を当該シーンの子機として設定する子機設定手段、
    前記親機設定手段によって自機が前記シーンの親機として設定されたとき、少なくとも、前記共有ゲームデータの更新を自機以外のすべてのゲーム装置に指示し、または、前記固有ゲームデータの更新を当該シーンに参加しているすべての子機に指示する親機処理手段、および
    前記子機設定手段によって自機が前記シーンの子機として設定されたとき、少なくとも、前記親機からの指示に従って前記固有ゲームデータを更新する子機処理手段を含む、ゲームシステム。
  2. 前記子機処理手段は、前記共有ゲームデータの更新を自機が参加する前記シーンの前記親機に要求する共有ゲームデータ更新要求手段を含み、
    前記親機処理手段は、前記子機からの前記共有ゲームデータの更新要求を受けて、前記共有ゲームデータの更新を自機以外のすべての前記ゲーム装置に指示する、請求項1記載のゲームシステム。
  3. 前記ゲーム装置は、他の前記ゲーム装置から前記共有ゲームデータの更新指示を受信する更新指示受信手段、および前記更新指示手段によって前記共有ゲームデータの更新指示を受信したことに応じて前記共有ゲームデータを更新する共有ゲームデータ更新手段をさらに含む、請求項1または2記載のゲームシステム。
  4. 前記ゲーム装置は、他のシーンに移動するとき、自機が親機である場合に現在のシーンに子機が存在するか否かを判断する子機有無判断手段、および前記子機有無判断手段によって現在のシーンに子機が存在すると判断されたとき所定のルールに従って選択した1の子機に親機になることを要求する親機設定要求手段をさらに含む、請求項1ないし3のいずれかに記載のゲームシステム。
  5. 前記ゲーム装置は、他の前記ゲーム装置から親機になることを要求されたかどうかを判断する親機設定要求判断手段、および前記親機設定要求判断手段によって親機になることを要求されたと判断されたとき、自機を親機として設定する設定変更手段をさらに含む、請求項4記載のゲームシステム。
  6. 前記ゲーム装置は、各々の前記ゲーム装置が参加しているシーンについてのシーン識別情報および各々の前記ゲーム装置が親機または子機のいずれに設定されているかを示す親子設定情報を含むシーン情報を記憶するシーン情報記憶手段をさらに含む、請求項1ないし5のいずれかに記載のゲームシステム。
  7. 前記ゲーム装置は、少なくとも、他のシーンに移動したとき、前記シーン情報を更新するシーン情報更新手段をさらに含む、請求項6記載のゲームシステム。
  8. 複数のシーンを含む仮想空間にプレイヤとして参加し、通信ゲームをプレイするゲーム装置であって、
    前記通信ゲームを行うすべてのゲーム装置で共有すべき共有ゲームデータを記憶する共有ゲームデータ記憶手段、
    自機が参加している前記シーンのみで共有すべきシーン固有の固有ゲームデータを記憶する固有ゲームデータ記憶手段、
    参加するシーンに他の前記ゲーム装置が参加していないとき、自機を当該シーンの親機として設定する親機設定手段、
    参加するシーンに他の前記ゲーム装置が参加しているとき、自機を当該シーンの子機として設定する子機設定手段、
    前記親機設定手段によって自機が前記シーンの親機として設定されたとき、少なくとも、前記共有ゲームデータの更新を自機以外のすべてのゲーム装置に指示し、または、前記固有ゲームデータの更新を当該シーンに参加しているすべての子機に指示する親機処理手段、および
    前記子機設定手段によって自機が前記シーンの子機として設定されたとき、少なくとも、前記親機からの指示に従って前記固有ゲームデータを更新する子機処理手段を備える、ゲーム装置。
  9. 前記子機処理手段は、前記共有ゲームデータの更新を自機が参加する前記シーンの前記親機に要求する共有ゲームデータ更新要求手段を含み、
    前記親機処理手段は、前記子機からの前記共有ゲームデータの更新要求を受けて、前記共有ゲームデータの更新を自機以外のすべての前記ゲーム装置に指示する、請求項8記載のゲーム装置。
  10. 他の前記ゲーム装置から前記共有ゲームデータの更新指示を受信する更新指示受信手段、および前記更新指示手段によって前記共有ゲームデータの更新指示を受信したことに応じて前記共有ゲームデータを更新する共有ゲームデータ更新手段をさらに備える、請求項8または9記載のゲーム装置。
  11. 他のシーンに移動するとき、自機が親機である場合に現在のシーンに子機が存在するか否かを判断する子機有無判断手段、および前記子機有無判断手段によって現在のシーンに子機が存在すると判断されたとき所定のルールに従って選択した1の子機に親機になることを要求する親機設定要求手段をさらに備える、請求項8ないし10のいずれかに記載のゲーム装置。
  12. 他の前記ゲーム装置から親機になることを要求されたかどうかを判断する親機設定要求判断手段、および前記親機設定要求判断手段によって親機になることを要求されたと判断されたとき、自機を親機として設定する設定変更手段をさらに備える、請求項11記載のゲーム装置。
  13. 各々の前記ゲーム装置が参加しているシーンについてのシーン識別情報および各々の前記ゲーム装置が親機または子機のいずれに設定されているかを示す親子設定情報を含むシーン情報を記憶するシーン情報記憶手段をさらに備える、請求項8ないし12のいずれかに記載のゲーム装置。
  14. 少なくとも、他のシーンに移動したとき、前記シーン情報を更新するシーン情報更新手段をさらに備える、請求項13記載のゲーム装置。
  15. 複数のシーンを含む仮想空間にプレイヤとして参加し、通信ゲームをプレイするゲーム装置のゲームプログラムであって、
    前記ゲーム装置は、前記通信ゲームを行うすべてのゲーム装置で共有すべき共有ゲームデータを記憶する共有ゲームデータ記憶手段、および自機が参加している前記シーンのみで共有すべきシーン固有の固有ゲームデータを記憶する固有ゲームデータ記憶手段を備え、
    前記ゲームプログラムは、前記ゲーム装置のプロセサに、
    参加するシーンに他の前記ゲーム装置が参加していないとき、自機を当該シーンの親機として設定する親機設定ステップ、
    参加するシーンに他の前記ゲーム装置が参加しているとき、自機を当該シーンの子機として設定する子機設定ステップ、
    前記親機設定ステップによって自機が前記シーンの親機として設定されたとき、少なくとも、前記共有ゲームデータの更新を自機以外のすべてのゲーム装置に指示し、または、前記固有ゲームデータの更新を当該シーンに参加しているすべての子機に指示する親機処理ステップ、および
    前記子機設定ステップによって自機が前記シーンの子機として設定されたとき、少なくとも、前記親機からの指示に従って前記固有ゲームデータを更新する子機処理ステップを実行させる、ゲームプログラム。
  16. 前記子機処理ステップは、前記共有ゲームデータの更新を自機が参加する前記シーンの前記親機に要求する共有ゲームデータ更新要求ステップを含み、
    前記親機処理ステップは、前記子機からの前記共有ゲームデータの更新要求を受けて、前記共有ゲームデータの更新を自機以外のすべての前記ゲーム装置に指示する、請求項15記載のゲームプログラム。
  17. 他の前記ゲーム装置から前記共有ゲームデータの更新指示を受信する更新指示受信ステップ、および前記更新指示ステップによって前記共有ゲームデータの更新指示を受信したことに応じて前記共有ゲームデータを更新する共有ゲームデータ更新ステップをさらに実行させる、請求項15または16記載のゲームプログラム。
  18. 他のシーンに移動するとき、自機が親機である場合に現在のシーンに子機が存在するか否かを判断する子機有無判断ステップ、および前記子機有無判断ステップによって現在のシーンに子機が存在すると判断されたとき所定のルールに従って選択した1の子機に親機になることを要求する親機設定要求ステップをさらに備える、請求項15ないし17のいずれかに記載のゲームプログラム。
  19. 他の前記ゲーム装置から親機になることを要求されたかどうかを判断する親機設定要求判断ステップ、および前記親機設定要求判断ステップによって親機になることを要求されたと判断されたとき、自機を親機として設定する設定変更ステップをさらに備える、請求項18記載のゲームプログラム。
  20. 前記ゲーム装置は、各々の前記ゲーム装置が参加しているシーンについてのシーン識別情報および各々の前記ゲーム装置が親機または子機のいずれに設定されているかを示す親子設定情報を含むシーン情報を記憶するシーン情報記憶手段をさらに備え、
    少なくとも、他のシーンに移動したとき、前記シーン情報を更新するシーン情報更新ステップをさらに実行させる、請求項15ないし請求項19のいずれかに記載のゲームプログラム。
JP2005131910A 2005-04-28 2005-04-28 ゲームシステム、ゲーム装置、ゲームプログラムおよびゲーム制御方法 Active JP4754261B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2005131910A JP4754261B2 (ja) 2005-04-28 2005-04-28 ゲームシステム、ゲーム装置、ゲームプログラムおよびゲーム制御方法
US11/367,434 US8414396B2 (en) 2005-04-28 2006-03-06 Game system, game apparatus, storage medium storing game program, and game controlling method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005131910A JP4754261B2 (ja) 2005-04-28 2005-04-28 ゲームシステム、ゲーム装置、ゲームプログラムおよびゲーム制御方法

Publications (2)

Publication Number Publication Date
JP2006305091A true JP2006305091A (ja) 2006-11-09
JP4754261B2 JP4754261B2 (ja) 2011-08-24

Family

ID=37235170

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005131910A Active JP4754261B2 (ja) 2005-04-28 2005-04-28 ゲームシステム、ゲーム装置、ゲームプログラムおよびゲーム制御方法

Country Status (2)

Country Link
US (1) US8414396B2 (ja)
JP (1) JP4754261B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010029723A (ja) * 2009-11-13 2010-02-12 Square Enix Co Ltd ネットワークゲームシステム、及びプログラム
JP2014534849A (ja) * 2011-10-18 2014-12-25 ソニー コンピュータ エンタテインメント アメリカ リミテッド ライアビリテイ カンパニー コンピュータシステムのためのデータ管理

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5005210B2 (ja) * 2005-11-11 2012-08-22 任天堂株式会社 ネットワークゲームシステム、ネットワークゲームプログラムおよびネットワーク構築方法
JP4319233B2 (ja) * 2007-12-11 2009-08-26 株式会社コナミデジタルエンタテインメント 端末装置、ゲーム制御方法、ならびに、プログラム
JP4871373B2 (ja) 2009-06-19 2012-02-08 任天堂株式会社 情報処理システムおよび情報処理装置
JP5674296B2 (ja) * 2009-09-09 2015-02-25 任天堂株式会社 情報処理システムおよび情報処理装置
JP2011250874A (ja) 2010-05-31 2011-12-15 Nintendo Co Ltd 情報処理プログラム、情報処理装置、情報処理システム及び情報処理方法
JP5593566B2 (ja) 2010-06-10 2014-09-24 任天堂株式会社 情報処理システム、情報処理装置、情報処理装置の制御方法および情報処理装置の制御プログラム
JP5677811B2 (ja) 2010-06-11 2015-02-25 任天堂株式会社 携帯型情報端末、携帯情報システム、携帯型情報端末制御プログラム
JP5507350B2 (ja) 2010-06-11 2014-05-28 任天堂株式会社 携帯型情報端末、携帯型情報端末制御プログラム、携帯型情報システム、および、携帯型情報端末制御方法
JP2012018657A (ja) 2010-06-11 2012-01-26 Nintendo Co Ltd 情報処理端末、情報処理システム、情報処理プログラム
JP4999213B2 (ja) 2010-09-17 2012-08-15 任天堂株式会社 情報処理プログラム、携帯端末装置、システム、情報処理方法及び通信システム
JP4882022B1 (ja) 2010-12-28 2012-02-22 任天堂株式会社 通信システム、情報処理プログラム、情報処理方法、情報処理装置、情報処理システム
CN102646152B (zh) * 2011-02-22 2015-10-21 腾讯科技(深圳)有限公司 一种游戏地图切换方法及***
KR101907009B1 (ko) * 2011-10-21 2018-10-12 삼성전자주식회사 디지털 상품을 설치하기 위한 장치 및 방법
CN103856336B (zh) * 2012-12-04 2017-06-16 福建天晴数码有限公司 一种游戏地图分时广播的方法
US11241623B2 (en) * 2017-05-05 2022-02-08 Sony Interactive Entertainment LLC Instant streaming of a mobile user interface without application install

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11191097A (ja) * 1997-09-26 1999-07-13 Internatl Business Mach Corp <Ibm> インターネット・ベースのゲームにおいて、情報を除去する多重領域近接グループのための方法及びシステム
JP2002159755A (ja) * 2000-11-15 2002-06-04 Taiwan Iji Kagi Kofun Yugenkoshi 多人インタラクティブネットワークゲームオンライン方法
JP2003169964A (ja) * 2001-12-28 2003-06-17 Ntt Docomo Inc ゲーム配信システム、ゲーム配信方法、サーバ及び携帯型端末
JP2004350910A (ja) * 2003-05-29 2004-12-16 Konami Co Ltd ネットワーク対戦型ゲームシステム、方法、装置及びプログラム
JP2005095601A (ja) * 2003-09-01 2005-04-14 Sony Computer Entertainment Inc ネットワークゲーム端末、ゲームサーバ、ネットワークゲーム端末で実行される方法及び記録媒体

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5987376A (en) * 1997-07-16 1999-11-16 Microsoft Corporation System and method for the distribution and synchronization of data and state information between clients in a distributed processing system
KR100323389B1 (ko) * 1999-04-28 2002-02-19 오정훈 휴대용 무선 네트웍 게임기 및 게임 방법
JP3333773B2 (ja) * 2000-04-14 2002-10-15 コナミ株式会社 ゲーム装置、ゲーム装置の制御方法及び情報記憶媒体
JP3830442B2 (ja) * 2002-10-22 2006-10-04 任天堂株式会社 無線通信ゲームシステム、ゲーム装置、情報記憶媒体、および、プログラム
JP2004174091A (ja) 2002-11-28 2004-06-24 Nintendo Co Ltd 通信ゲームシステム
JP4324487B2 (ja) * 2004-01-20 2009-09-02 任天堂株式会社 無線通信ゲームシステムおよび無線通信ゲームプログラム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11191097A (ja) * 1997-09-26 1999-07-13 Internatl Business Mach Corp <Ibm> インターネット・ベースのゲームにおいて、情報を除去する多重領域近接グループのための方法及びシステム
JP2002159755A (ja) * 2000-11-15 2002-06-04 Taiwan Iji Kagi Kofun Yugenkoshi 多人インタラクティブネットワークゲームオンライン方法
JP2003169964A (ja) * 2001-12-28 2003-06-17 Ntt Docomo Inc ゲーム配信システム、ゲーム配信方法、サーバ及び携帯型端末
JP2004350910A (ja) * 2003-05-29 2004-12-16 Konami Co Ltd ネットワーク対戦型ゲームシステム、方法、装置及びプログラム
JP2005095601A (ja) * 2003-09-01 2005-04-14 Sony Computer Entertainment Inc ネットワークゲーム端末、ゲームサーバ、ネットワークゲーム端末で実行される方法及び記録媒体

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010029723A (ja) * 2009-11-13 2010-02-12 Square Enix Co Ltd ネットワークゲームシステム、及びプログラム
JP2014534849A (ja) * 2011-10-18 2014-12-25 ソニー コンピュータ エンタテインメント アメリカ リミテッド ライアビリテイ カンパニー コンピュータシステムのためのデータ管理

Also Published As

Publication number Publication date
US20060247059A1 (en) 2006-11-02
US8414396B2 (en) 2013-04-09
JP4754261B2 (ja) 2011-08-24

Similar Documents

Publication Publication Date Title
JP4754261B2 (ja) ゲームシステム、ゲーム装置、ゲームプログラムおよびゲーム制御方法
JP3874785B1 (ja) ゲームシステムおよびゲームプログラム
JP4781743B2 (ja) 通信ゲームシステム
JP5501546B2 (ja) ゲームシステム、ゲーム装置およびゲームプログラム
JP4603931B2 (ja) オブジェクト移動制御装置およびオブジェクト移動制御プログラム
JP5196729B2 (ja) 通信ゲームシステム
US8246469B2 (en) Storage medium storing program, apparatus, communication system and control method
JP2008142181A (ja) ビデオゲーム処理装置、ビデオゲーム処理方法、およびビデオゲーム処理プログラム
JP2006340744A (ja) ゲームプログラムおよびゲーム装置
JP2007102499A (ja) オブジェクト移動制御プログラムおよび情報処理装置
JP2009100906A (ja) 分布図表示プログラム、情報処理装置および分布図表示システム
JP6505962B2 (ja) 情報処理システム、情報処理装置、情報処理プログラムおよび情報処理方法
JP2007111568A (ja) ゲームプログラムおよびゲーム装置
JP6271692B2 (ja) 通信ゲームシステムおよび通信制御方法
JP2010113728A (ja) 複数の情報処理装置を用いた選択肢の選択システム
JP4448814B2 (ja) 複数の情報処理装置を用いた選択肢の選択システム
JP5031261B2 (ja) ゲームプログラムおよびゲーム装置
JP6243490B1 (ja) ゲームプログラム、コンピュータ装置、及び、ゲーム進行方法
JP2007128534A (ja) 複数の情報処理装置を用いた選択肢の選択システム
JP4287764B2 (ja) 競争ゲーム装置および競争ゲームプログラム
JP2006314721A (ja) ゲーム装置およびゲームプログラム
JP2008200538A (ja) 競争ゲーム装置および競争ゲームプログラム
JP6564004B2 (ja) ゲームプログラム、コンピュータ装置、及び、ゲーム進行方法
JP2006102284A (ja) ゲーム装置およびゲームプログラム
JP2023166352A (ja) ゲームプログラム、ゲームシステム、ゲーム装置およびゲーム処理方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080425

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110125

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110325

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110525

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140603

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4754261

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

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