JP4850490B2 - ゲームプログラムおよびゲーム装置 - Google Patents

ゲームプログラムおよびゲーム装置 Download PDF

Info

Publication number
JP4850490B2
JP4850490B2 JP2005328149A JP2005328149A JP4850490B2 JP 4850490 B2 JP4850490 B2 JP 4850490B2 JP 2005328149 A JP2005328149 A JP 2005328149A JP 2005328149 A JP2005328149 A JP 2005328149A JP 4850490 B2 JP4850490 B2 JP 4850490B2
Authority
JP
Japan
Prior art keywords
communication
game
state information
communication partner
user terminal
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
JP2005328149A
Other languages
English (en)
Other versions
JP2007130338A (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.)
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 JP2005328149A priority Critical patent/JP4850490B2/ja
Priority to US11/543,216 priority patent/US8052528B2/en
Publication of JP2007130338A publication Critical patent/JP2007130338A/ja
Application granted granted Critical
Publication of JP4850490B2 publication Critical patent/JP4850490B2/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/34Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers using peer-to-peer connections
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/131Protocols for games, networked simulations or virtual reality
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/40Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass for recovering from a failure of a protocol instance or entity, e.g. service redundancy protocols, protocol state redundancy or protocol service redirection
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/40Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterised by details of platform network
    • A63F2300/408Peer to peer connection

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Health & Medical Sciences (AREA)
  • Child & Adolescent Psychology (AREA)
  • Mobile Radio Communication Systems (AREA)

Description

この発明は、ゲームプログラムおよびゲーム装置に関し、特に、複数のゲーム装置間で相互にゲームデータを送受信し、他のゲーム装置から受信したゲームデータを利用して各ゲーム装置がゲーム処理を実行するゲームシステムに用いられるゲームプログラムおよびゲーム装置に関する。
ネットワークゲームシステムには、大きく分けてクライアント/サーバ型のネットワークゲームシステムとピアツーピア型のネットワークゲームシステムが存在する。
クライアント/サーバ型ネットワークゲームシステムは、ユーザ端末がクライアントとしてゲームサーバに接続し、主にゲームサーバがゲーム処理を実行することによってゲームが進行するネットワークゲームシステムである。このクライアント/サーバ型ネットワークゲームシステムは、ゲームサーバに同時に接続されているユーザ端末の数が増えるほどゲームサーバの処理負担が大きくなるため、十分に高性能なゲームサーバを用意する必要があり、ネットワークゲームシステムの構築のためのコストが高いという不利な点がある。
これに対して、ピアツーピア型ネットワークゲームシステムは、基本的にはユーザ端末同士で通信をすることによってゲームが進行するネットワークゲームシステムであるため、クライアント/サーバ型ネットワークゲームシステムのような高性能なゲームサーバは必要なく、またユーザ端末間のデータ転送もゲームサーバを経由せずに行うことができるため、例えばレースゲームのようなリアルタイムな処理が要求されるゲームに適している。非特許文献1には、このようなピアツーピア型ネットワークゲームシステムの一例が開示されている。
「オンラインゲームプログラミング」、ソフトバンクパブリッシング株式会社、Jung WunChul著、2005年3月3日 初版、P218〜222
しかしながら、上記非特許文献1には、ピアツーピア型ネットワークにユーザ端末を接続していく手法については開示されているが、接続状態が不安定もしくは接続不能になった端末を切り離す手法については開示されていない。
また、前述したように、ピアツーピア型ネットワークゲームシステムは、クライアント/サーバ型ネットワークゲームシステムとは異なり、他のユーザ端末から受け取る信号に基づいて各ユーザ端末が個別に演算を行う特徴を有しているため、接続状態が不安定もしくは接続不能になった端末を単純に切り離せば、各ユーザ端末で実行されるゲームの内容にズレが生じ、場合によってはゲームの進行に深刻な影響を与えてしまうという問題がある。
例えば、図27に示すように4台のゲーム装置で構成されたピアツーピア型ネットワークゲームシステムにおいて、ゲーム装置Aとゲーム装置Bとの間の通信回線に障害が発生した場合には、ゲーム装置Aは、ゲーム装置Bからの信号が受信できなくなったことから自身のゲームデータとゲーム装置Cおよびゲーム装置Dから送信されてくるゲームデータ(すなわちゲーム装置A、ゲーム装置Cおよびゲーム装置Dの3台のゲーム装置のゲームデータ)に基づいてゲーム処理を続行するが、ゲーム装置Cは、自身のゲームデータとゲーム装置A、ゲーム装置Bおよびゲーム装置Dから送信されてくるゲームデータ(すなわちゲーム装置A、ゲーム装置B、ゲーム装置Cおよびゲーム装置Dの4台のゲーム装置のゲームデータ)に基づいてゲーム処理を続行する。この結果、ゲーム装置Aで実行されるゲーム処理の結果とゲーム装置Cで実行されるゲーム処理の結果にズレが生じてしまうことになる。
それゆえに本発明の目的は、上記の従来のピアツーピア型ネットワークゲームシステムの問題点を解消し、接続状態が不安定もしくは接続不能になった端末を、ゲームの内容にズレが生じないように切り離すことのできるネットワークゲームシステムを提供することである。
上記目的を達成するために、本発明は以下の構成を採用した。なお、括弧内の参照符号および図番号は本発明の理解を助けるために図面との対応関係を示したものであって、本発明の範囲を何ら限定するものではない。
本発明の第1の局面は、複数のゲーム装置(10)間で相互にゲームデータを送受信し、他のゲーム装置から受信したゲームデータを利用して各ゲーム装置がゲーム処理を実行するゲームシステムにおいて、各ゲーム装置において実行されるゲームプログラム(20)である。当該ゲームプログラムは、前記ゲーム装置のコンピュータ(11)を、通信相手リスト追加手段(S12)、通信状態判定手段(S30)、第1の通信状態情報更新手段(S32)、通信状態情報送信手段(S38)、通信状態情報受信手段(S16)、第2の通信状態情報更新手段(S36)、通信相手リスト削除手段(S42)、ゲームデータ送受信手段(S38、S16)、およびゲーム処理手段(S23)として機能させるためのゲームプログラムである。通信相手リスト追加手段は、自身のゲーム装置が属するネットワークに新たな通信相手として他のゲーム装置が接続されたときに、自身のゲーム装置の記憶部(12)に保持されている通信相手の一覧を示す通信相手リスト(21)に、当該新たな通信相手を追加する手段である。通信状態判定手段は、各通信相手からの信号の受信状況(23)に基づいて、自身のゲーム装置と各通信相手との間の通信が可能か否かをそれぞれ判定する手段である。第1の通信状態情報更新手段は、前記記憶部に保持されている、自身のゲーム装置と各通信相手との間の通信が可能か否かを示す通信状態情報(22a)を、前記通信状態判定手段の判定結果に基づいて随時更新する手段である。通信状態情報送信手段は、自身のゲーム装置の通信状態情報(22a)を各通信相手に定期的に送信する手段である。通信状態情報受信手段は、各通信相手の通信状態情報(22b)を各通信相手からそれぞれ受信して前記記憶部に格納する手段である。第2の通信状態情報更新手段は、前記通信状態情報受信手段によって受信された各通信相手の通信状態情報を参照し、いずれかの通信相手の通信状態情報において通信不可能な相手として示されているゲーム装置が存在したときに、前記記憶部に保持されている通信状態情報(22a)において当該ゲーム装置が通信不可能な相手として示されるように、当該通信状態情報を更新する手段である。通信相手リスト削除手段は、前記記憶部に保持されている、自身のゲーム装置の通信状態情報(22a)と各通信相手の通信状態情報(22b)を参照し、全ての通信状態情報において共通に通信不可能な相手として示されているゲーム装置が存在したときに、当該ゲーム装置を前記通信相手リスト(21)から削除する手段である。ゲームデータ送受信手段は、前記通信相手リストに示されている各通信相手とゲームデータを定期的に送受信する手段である。ゲーム処理手段は、前記ゲームデータ送受信手段によって受信された各通信相手のゲームデータに基づいてゲーム処理を実行する手段である。
なお変形例として、前記通信状態情報送信手段は、前記ゲームデータ送受信手段がいずれかの通信相手にゲームデータを送信するときに、自身のゲーム装置の通信状態情報を当該ゲームデータと一緒に送信してもよい。
また変形例として、前記通信状態情報は、前記通信相手リストに含まれている通信相手のうち、前記通信状態判定手段によってその相手との通信が可能であると判定された通信相手のみから成るリストを含んでいてもよい(図7A)。
また変形例として、前記通信状態判定手段は、各通信相手から信号を最後に受信してからの経過時間をそれぞれ計時し、その経過時間が一定時間を超えたか否かによって、各通信相手と通信が可能か否かを判定してもよい。
本発明の第2の局面は、複数のゲーム装置(10)間で相互にゲームデータを送受信し、他のゲーム装置から受信したゲームデータを利用して各ゲーム装置がゲーム処理を実行するゲームシステムに用いられるゲーム装置である。当該ゲーム装置は、通信相手リスト追加手段(11、S12)、通信状態判定手段(11、S30)、第1の通信状態情報更新手段(11、S32)、通信状態情報送信手段(11、S38)、通信状態情報受信手段(11、S16)、第2の通信状態情報更新手段(11、S36)、通信相手リスト削除手段(11、S42)、ゲームデータ送受信手段(11、S38、S16)、およびゲーム処理手段(11、S23)を備えている。
本発明によれば、通信不可能となったゲーム装置をすぐに切断するのではなく、通信相手リストに含まれている全ての通信相手においてそのゲーム装置を切断する準備ができていることを、各通信相手から受信した通信状態情報に基づいて確認してから、はじめてその通信不可能となったゲーム装置を切断する。よって、例えばピアツーピア型ネットワークゲームシステムにおいて、あるゲーム装置は3台分のゲーム装置のゲームデータに基づいてゲーム処理を続行し、別のゲーム装置は4台分のゲーム装置のゲームデータに基づいてゲーム処理を続行する、というような状況を確実に回避することができ、各ゲーム装置で実行されるゲーム処理の結果にズレが生じてしまうことを防止することができる。
以下、本発明の好ましい一実施形態について図面を参照して説明する。
図1は、本発明の好ましい一実施形態としてのゲームシステムの構成を示す図である。ゲームシステムは、複数のユーザ端末(ゲーム装置)10で構成される。これらの複数のユーザ端末間で相互にゲームデータが送受信され、各ユーザ端末では、他のユーザ端末から受信したゲームデータを利用してゲーム処理が実行される。
図2に、ユーザ端末10の典型的な構成例を示す。ユーザ端末10は、CPU11、RAM12、ハードディスク13、通信部14、入力部15および表示部16を備えている。CPU11は、ハードディスク13に格納されているゲームプログラムをRAM12にロードして実行する。なお、ここではゲームプログラムがハードディスク13に予め格納されている例を説明しているが、本発明はこれに限らず、メモリカードやカートリッジやDVD−ROM等の外部記録媒体を通じてゲームプログラムがユーザ端末10に供給されても良いし、通信部14を通じてゲームプログラムがユーザ端末10に供給されても良い。CPU11は、ゲームプログラムを実行することにより、レースゲームなどのビデオゲームを実現する。入力部15はゲームの操作のために利用され、表示部16はゲーム画像の表示のために利用される。
図3は、ユーザ端末10のRAM12のメモリマップの一例である。RAM12には、ハードディスク13からロードされたゲームプログラム20の他に、通信相手リスト21、通信状態情報22、およびフレームカウンタ23が格納され、通信相手リスト21、通信状態情報22、およびフレームカウンタ23は、ゲームの進行に応じて適宜に更新される。
通信相手リスト21とは、ゲームデータを送受信する相手のユーザ端末を示すリストである。例えば、ユーザ端末A、ユーザ端末B、ユーザ端末Cおよびユーザ端末Dの4台のユーザ端末でゲームシステムが構成されており、各ユーザ端末間で通信が正常に行われている場合には、ユーザ端末AのRAMに保持される通信相手リストは図4のようになる。
通信状態情報22とは、自身のユーザ端末と通信相手リスト21に含まれている各通信相手との間の通信が可能か否かを示す情報である。なお、この通信状態情報22はユーザ端末間で相互に送受信され、各ユーザ端末では、自身の通信状態情報22aと、各通信相手から受信した通信状態情報(すなわち各通信相手の通信状態情報)22bとがRAM12に保持される。図5に、ユーザ端末AのRAMに保持される通信状態情報22の一具体例を示す。
フレームカウンタ23とは、通信相手リスト21に含まれている各通信相手から信号を最後に受信してからの経過時間(経過フレーム数)をそれぞれ計時するためのカウンタである。図5に、ユーザ端末AのRAMに保持されるフレームカウンタ23の一具体例を示す。後述するように、フレームカウンタ23において、あるユーザ端末のカウント値が予め定められた閾値(例えば300)に達すると、このユーザ端末と通信不能になったと判断される。なお、この閾値は、ゲームの進行状況に応じて適宜に変更してもよい。例えば、レースゲームへの参加を受付けている間と、レースゲームにおけるレース中とで、通信不能と判断する閾値を変化させても良い。
なお、通信状態情報22は、前述したように、自身のユーザ端末と通信相手リスト21に含まれている各通信相手との間の通信が可能か否かを示す情報であるが、そのデータ構造としては複数のバリエーションが考えられる。図7A、図7B、図7Cは、ユーザ端末A、ユーザ端末B、ユーザ端末Cおよびユーザ端末Dの4台のユーザ端末でゲームシステムが構成されているが、ユーザ端末Aとユーザ端末Bとの間で通信不能になった場合において、ユーザ端末AのRAMに保持される通信状態情報(自身の通信状態情報22a)の3つの具体例を示している。図7Aは、通信相手リスト21に含まれている通信相手のうち、通信可能な通信相手だけがリストアップされる例である。図7Bは、通信相手リスト21に含まれている通信相手毎に、その通信相手と通信可能か通信不可能かが示される例である。図7Cは、通信相手リスト21に含まれている通信相手のうち、通信不可能な通信相手だけがリストアップされる例である。以下では、通信状態情報22が図7Aに示すデータ構造を有するものとして説明を行う。
以下、図8〜図10のフローチャートを参照して、ゲームプログラム20に基づくユーザ端末10のCPU11の処理の流れを説明する。
図8はメイン処理の流れを示すフローチャートである。メイン処理が開始されると、まずCPU11は、ステップS10で、自身のユーザ端末に新たなユーザ端末が接続されたかどうかを判断し、新たなユーザ端末が接続された場合には処理はステップS12に進み、新たなユーザ端末が接続されていない場合には処理はステップS14に進む。
ステップS12では、新たに接続されたユーザ端末(より正確には、そのユーザ端末を示す識別情報)を、RAM12に保持されている通信相手リスト21に追加する。
ステップS14では、通信状態情報送信処理を実行する。以下、図9を参照して、この通信状態情報送信処理の詳細を説明する。
図9のステップS26で、CPU11は、通信相手リスト21をコピーして自身の通信状態情報22aに上書きする。
ステップS28では、フレームカウンタ23における各ユーザ端末のカウント値をそれぞれ1加算する。
ステップS30では、フレームカウンタ23のカウント値が所定の閾値(例えば300)以上となっているユーザ端末が存在するかどうかを判断し、存在すれば処理はステップS32に進み、存在しなければ処理はステップS34に進む。
ステップS32では、フレームカウンタ23のカウント値が所定の閾値以上となっているユーザ端末を、自身の通信状態情報22aから削除する。
ステップS34では、他のユーザ端末から受信した通信状態情報、すなわちRAM12に格納されている通信相手の通信状態情報22bのいずれかにおいて、通信不可能であると示されているユーザ端末が存在するかどうかを判断し、存在すれば処理はステップS36に進み、存在しなければ処理はステップS38に進む。例えば、ユーザ端末A、ユーザ端末B、ユーザ端末C、ユーザ端末Dの4台のユーザ端末でゲームシステムが構成されているときに、ユーザ端末Aから図7Aのような通信状態情報をユーザ端末Cが受信した場合には、この通信状態情報は、ユーザ端末Aがユーザ端末Bと通信不可能であることを示しているので、ユーザ端末CにおけるステップS34の判断結果は肯定となる。
ステップS36では、すなわちRAM12に格納されている通信相手の通信状態情報22bのいずれかにおいて、通信不可能であると示されているユーザ端末を、自身の通信状態情報22aから削除する。上記の例では、ユーザ端末Cにおいて、自身の通信状態情報22aからユーザ端末Bが削除されることになる。
ステップS38では、通信相手リスト21に含まれている全ての通信相手に、ゲームデータと一緒に自身の通信状態情報22aを送信する(ただし、必ずしもゲームデータと一緒に送信する必要はない)。この結果、通信相手リスト21から自身のユーザ端末が切断しようとしているユーザ端末と他のユーザ端末が切断しようとしているユーザ端末とを削除した、残りのユーザ端末のリストが通信状態情報として通信相手に送信されることになる。ステップS38で通信状態情報を送信し終えると、通信状態情報送信処理を終了して処理は図8のステップS16に進む。
ステップS16では、通信相手から通信状態情報を受信したかどうかを判断し、受信した場合には処理はステップS18に進み、受信していない場合には処理はステップS22に進む。
ステップS18では、通信相手から受信した通信状態情報を、通信相手の通信状態情報22bとしてRAM12に上書きする。
ステップS20では、受信した通信状態情報の送信元のユーザ端末に対応するフレームカウンタ23のカウント値を0にリセットする。
ステップS22では、切断処理を実行する。以下、図10を参照して、この切断処理の詳細を説明する。
図10のステップS40で、CPU11は、RAM12に格納されている、通信リスト21に含まれている各通信相手から受信した通信状態情報を参照し、それらの全ての通信状態情報において共通に通信不可能と示されているユーザ端末が存在するかどうかを判断し、存在する場合には処理はステップS42に進み、存在しなければ切断処理を終了して処理は図8のステップS24に進む。
ステップS42では、RAM12に格納されている全ての通信状態情報において共通に通信不可能と示されているユーザ端末を、通信相手リスト21から削除する。こうして通信相手リスト21から削除されたユーザ端末に対しては、以降はゲームデータも通信状態情報も送信されないことになる。ステップS42の処理を終えると切断処理を終了し、処理は図8のステップS23に進む。
ステップS23では、入力部15からの入力および通信相手から受信したゲームデータに基づいてゲーム処理を実行する。
ステップS24では、ゲームが終了したかどうかを判断し、終了した場合にはメイン処理を終了する。一方、ゲームが終了していない場合には処理はステップS10に戻り、ゲームが終了するまでステップS10〜S23の処理を1フレーム期間(60分の1秒)の周期で繰り返し実行する。
以上のようなユーザ端末10の動作の結果、あるユーザ端末を切断するときに、通信相手から送信される通信状態情報に基づいて、自身のユーザ端末に接続されている全ての通信相手においてそのユーザ端末を切断する用意ができていることを確認してから切断するので、ユーザ端末間でゲーム処理の結果にズレが生じてしまうことを確実に回避することができる。
なお、以上の説明では、図9のステップS38においてゲームデータと一緒に自身の通信状態情報を毎フレーム送信するとしているが、本発明はこれに限らず、ゲームデータと通信状態情報を個別に送信しても良い。また、ゲームデータおよび通信状態情報を、複数の通信相手に対して順番に送信しても良い。例えばユーザ端末Aからユーザ端末Bにゲームデータおよび通信状態情報を送信し、そこから2フレーム経過後にユーザ端末Aからユーザ端末Cにゲームデータおよび通信状態情報を送信し、そこから2フレーム経過後にユーザ端末Aからユーザ端末Dにゲームデータおよび通信状態情報を送信し、そこから2フレーム後にユーザ端末Aからユーザ端末Bにゲームデータおよび通信状態情報を送信するようにしてもよい。
以下、図11A〜図26Bを参照して、ユーザ端末A、ユーザ端末B、ユーザ端末C、ユーザ端末Dの4台のユーザ端末で構成されるゲームシステムにおいて、ユーザ端末Aとユーザ端末Bとの間の通信回線に障害が発生したときの処理の流れを具体的に説明する。なお、ここでは、通信状態情報は2フレーム毎に各通信相手に順番に送信される(つまり送信先が6フレーム期間で一巡する)ものとする。また、データ通信のタイムラグは約10フレーム期間であると仮定する。
図11Aは、第204フレームにおけるユーザ端末間の関係を示す図であり、この時点ではまだ通信回線に障害が発生していない。図11Bは、第204フレームにおいて各ユーザ端末のRAMに保持されている情報を示す図である。例えば、ユーザ端末Aに保持されている通信相手リスト21にはユーザ端末B、ユーザ端末C、ユーザ端末Dが含まれている。また、ユーザ端末Aに保持されているフレームカウンタ23において、ユーザ端末Bのカウント値は2、ユーザ端末Cのカウント値は0、ユーザ端末Dのカウント値は4となっている。また、ユーザ端末Aには通信相手の通信状態情報22bとしてユーザ端末Bの通信状態情報とユーザ端末Cの通信状態情報とユーザ端末Dの通信状態情報が保持されており、例えばユーザ端末Bの通信状態情報にはユーザ端末Aとユーザ端末Cとユーザ端末Dが含まれている。また、ユーザ端末Aに保持されている自身の通信状態情報22aには、ユーザ端末Bとユーザ端末Cとユーザ端末Dが含まれている。
第204フレームの直後にユーザ端末Aとユーザ端末Bとの間の通信回線に障害が発生すると、第500フレームにおいてユーザ端末間の接続関係および各ユーザ端末のRAMに保持されている情報は、それぞれ図12A、図12Bのようになる。第500フレームでは、ユーザ端末Bのフレームカウンタにおけるユーザ端末Aのカウント値が所定の閾値(300)を超えるので。ユーザ端末B(より正確にはユーザ端末BのCPU)は、ユーザ端末Aと通信不能と判断し、自身の通信状態情報からユーザ端末Aを削除する。なお、ユーザ端末Bの通信状態情報からユーザ端末Aが削除されたことは、通信状態情報の送信タイミングや通信のタイムラグなどにより、数フレーム〜十数フレーム後に他のユーザ端末に伝わることになる。
第502フレームでは、ユーザ端末間の接続関係および各ユーザ端末のRAMに保持されている情報は、それぞれ図13A、図13Bのようになる。このフレームでは、ユーザ端末Aのフレームカウンタにおけるユーザ端末Bのカウント値が所定の閾値(300)を超えるので、ユーザ端末Aは、ユーザ端末Bと通信不能と判断し、自身の通信状態情報からユーザ端末Bを削除する。
第510フレームでは、ユーザ端末間の接続関係および各ユーザ端末のRAMに保持されている情報は、それぞれ図14A、図14Bのようになる。このフレームでは、ユーザ端末Bから送信された通信状態情報がユーザ端末Cによって受信される。ユーザ端末Cは、ユーザ端末Bの通信状態情報からユーザ端末Aが削除されていることを受けて、自身の通信状態情報からユーザ端末Aを削除する。
第512フレームでは、ユーザ端末間の接続関係および各ユーザ端末のRAMに保持されている情報は、それぞれ図15A、図15Bのようになる。このフレームでは、ユーザ端末Bから送信された通信状態情報がユーザ端末Dによって受信される。ユーザ端末Dは、ユーザ端末Bの通信状態情報からユーザ端末Aが削除されていることを受けて、自身の通信状態情報からユーザ端末Aを削除する。
第514フレームでは、ユーザ端末間の接続関係および各ユーザ端末のRAMに保持されている情報は、それぞれ図16A、図16Bのようになる。このフレームでは、ユーザ端末Aから送信された通信状態情報がユーザ端末Cによって受信される。ユーザ端末Cは、ユーザ端末Aの通信状態情報からユーザ端末Bが削除されていることを受けて、自身の通信状態情報からユーザ端末Bを削除する。
第516フレームでは、ユーザ端末間の接続関係および各ユーザ端末のRAMに保持されている情報は、それぞれ図17A、図17Bのようになる。このフレームでは、ユーザ端末Aから送信された通信状態情報がユーザ端末Dによって受信される。ユーザ端末Dは、ユーザ端末Aの通信状態情報からユーザ端末Bが削除されていることを受けて、自身の通信状態情報からユーザ端末Bを削除する。
第520フレームでは、ユーザ端末間の接続関係および各ユーザ端末のRAMに保持されている情報は、それぞれ図18A、図18Bのようになる。このフレームでは、ユーザ端末Cから送信された通信状態情報がユーザ端末Dによって受信される。ユーザ端末Dは、ユーザ端末Cの通信状態情報からユーザ端末Aが削除されており、さらに他の通信相手の通信状態情報にもユーザ端末Aが含まれていないので、図19Bに示すように、通信相手リストからユーザ端末Aを削除する。この結果、図19Aに示すように、ユーザ端末Aとユーザ端末Dが切断される。
第522フレームでは、ユーザ端末間の接続関係および各ユーザ端末のRAMに保持されている情報は、それぞれ図20A、図20Bのようになる。このフレームでは、ユーザ端末Cから送信された通信状態情報がユーザ端末Aによって受信され、ユーザ端末Dから送信された通信状態情報がユーザ端末Cによって受信される。ユーザ端末Cは、ユーザ端末Dの通信状態情報からユーザ端末Aが削除されており、さらに他の通信相手の通信状態情報にもユーザ端末Aが含まれていないので、図21Bに示すように、通信相手リストからユーザ端末Aを削除する。この結果、図21Aに示すように、ユーザ端末Aとユーザ端末Cが切断される。
第524フレームでは、ユーザ端末間の接続関係および各ユーザ端末のRAMに保持されている情報は、それぞれ図22A、図22Bのようになる。このフレームでは、ユーザ端末Cから送信された通信状態情報がユーザ端末Bによって受信される。
第526フレームでは、ユーザ端末間の接続関係および各ユーザ端末のRAMに保持されている情報は、それぞれ図23A、図23Bのようになる。このフレームでは、ユーザ端末Dから送信された通信状態情報がユーザ端末Bによって受信され、ユーザ端末Cから送信された通信状態情報がユーザ端末Dによって受信される。ユーザ端末Dは、ユーザ端末Cの通信状態情報からユーザ端末Bが削除されており、さらに他の通信相手の通信状態情報にもユーザ端末Bが含まれていないので、図24Bに示すように、通信相手リストからユーザ端末Bを削除する。この結果、図24Aに示すように、ユーザ端末Bとユーザ端末Dが切断される。
第528フレームでは、ユーザ端末間の接続関係および各ユーザ端末のRAMに保持されている情報は、それぞれ図25A、図25Bのようになる。このフレームでは、ユーザ端末Dから送信された通信状態情報がユーザ端末Cによって受信される。ユーザ端末Cは、ユーザ端末Dの通信状態情報からユーザ端末Bが削除されており、さらに他の通信相手の通信状態情報にもユーザ端末Bが含まれていないので、図26Bに示すように、通信相手リストからユーザ端末Bを削除する。この結果、図26Aに示すように、ユーザ端末Bとユーザ端末Cが切断される。
こうして、以降はユーザ端末Cとユーザ端末Dとの間でゲームが進行することになる。なお、ユーザ端末Aは、他のユーザ端末から信号を受信することがなくなるので、フレームカウンタにおける各通信相手のカウント値が増え続け、全ての通信相手のカウント値が300以上となった時点でゲーム処理を終了する。ユーザ端末Bについても同様である。
本発明の好ましい一実施形態としてのネットワークシステムの構成を示す図 ユーザ端末10の典型的な構成例 RAM12のメモリマップの一例 通信相手リスト21の一具体例 通信状態情報22の一具体例 フレームカウンタ23の一具体例 通信状態情報22のデータ構造の第1のバリエーション 通信状態情報22のデータ構造の第2のバリエーション 通信状態情報22のデータ構造の第3のバリエーション CPU11の処理の流れを示すフローチャート 通信状態情報送信処理の流れを示すフローチャート 切断処理の流れを示すフローチャート 第204フレームにおけるユーザ端末間の関係を示す図 第204フレームにおいて各ユーザ端末のRAMに保持されている情報を示す図 第500フレームにおけるユーザ端末間の関係を示す図 第500フレームにおいて各ユーザ端末のRAMに保持されている情報を示す図 第502フレームにおけるユーザ端末間の関係を示す図 第502フレームにおいて各ユーザ端末のRAMに保持されている情報を示す図 第510フレームにおけるユーザ端末間の関係を示す図 第510フレームにおいて各ユーザ端末のRAMに保持されている情報を示す図 第512フレームにおけるユーザ端末間の関係を示す図 第512フレームにおいて各ユーザ端末のRAMに保持されている情報を示す図 第514フレームにおけるユーザ端末間の関係を示す図 第514フレームにおいて各ユーザ端末のRAMに保持されている情報を示す図 第516フレームにおけるユーザ端末間の関係を示す図 第516フレームにおいて各ユーザ端末のRAMに保持されている情報を示す図 第520フレームにおけるユーザ端末間の関係を示す図 第520フレームにおいて各ユーザ端末のRAMに保持されている情報を示す図 第520フレームにおけるユーザ端末間の関係を示す他の図 第520フレームにおいて各ユーザ端末のRAMに保持されている情報を示す図 第522フレームにおけるユーザ端末間の関係を示す図 第522フレームにおいて各ユーザ端末のRAMに保持されている情報を示す他の図 第522フレームにおけるユーザ端末間の関係を示す他の図 第522フレームにおいて各ユーザ端末のRAMに保持されている情報を示す他の図 第524フレームにおけるユーザ端末間の関係を示す図 第524フレームにおいて各ユーザ端末のRAMに保持されている情報を示す図 第526フレームにおけるユーザ端末間の関係を示す図 第526フレームにおいて各ユーザ端末のRAMに保持されている情報を示す図 第526フレームにおけるユーザ端末間の関係を示す他の図 第526フレームにおいて各ユーザ端末のRAMに保持されている情報を示す他の図 第528フレームにおけるユーザ端末間の関係を示す図 第528フレームにおいて各ユーザ端末のRAMに保持されている情報を示す図 第528フレームにおけるユーザ端末間の関係を示す他の図 第528フレームにおいて各ユーザ端末のRAMに保持されている情報を示す他の図 従来のピアツーピア型ゲームシステムにおいて通信障害が発生したときの各ゲーム装置間の関係を示す図
符号の説明
10 ユーザ端末
11 CPU
12 RAM
13 ハードディスク
14 通信部
15 入力部
16 表示部
20 ゲームプログラム
21 通信相手リスト
22 通信状態情報
22a 自身の通信状態情報
22b 通信相手の通信状態情報
23 フレームカウンタ

Claims (5)

  1. 複数のゲーム装置間で相互にゲームデータを送受信し、他のゲーム装置から受信したゲームデータを利用して各ゲーム装置がゲーム処理を実行するゲームシステムにおいて、各ゲーム装置において実行されるゲームプログラムであって、前記ゲーム装置のコンピュータを、
    自身のゲーム装置が属するネットワークに新たな通信相手として他のゲーム装置が接続されたときに、自身のゲーム装置の記憶部に保持されている通信相手の一覧を示す通信相手リストに、当該新たな通信相手を追加する通信相手リスト追加手段、
    各通信相手からの信号の受信状況に基づいて、自身のゲーム装置と各通信相手との間の通信が可能か否かをそれぞれ判定する通信状態判定手段、
    前記記憶部に保持されている、自身のゲーム装置と各通信相手との間の通信が可能か否かを示す通信状態情報を、前記通信状態判定手段の判定結果に基づいて随時更新する第1の通信状態情報更新手段、
    自身のゲーム装置の通信状態情報を各通信相手に定期的に送信する通信状態情報送信手段、
    各通信相手の通信状態情報を各通信相手からそれぞれ受信して前記記憶部に格納する通信状態情報受信手段、
    前記通信状態情報受信手段によって受信された各通信相手の通信状態情報を参照し、いずれかの通信相手の通信状態情報において通信不可能な相手として示されているゲーム装置が存在したときに、前記記憶部に保持されている通信状態情報において当該ゲーム装置が通信不可能な相手として示されるように、当該通信状態情報を更新する第2の通信状態情報更新手段、
    前記記憶部に保持されている、自身のゲーム装置の通信状態情報と各通信相手の通信状態情報を参照し、全ての通信状態情報において共通に通信不可能な相手として示されているゲーム装置が存在したときに、当該ゲーム装置を前記通信相手リストから削除する通信相手リスト削除手段、
    前記通信相手リストに示されている各通信相手とゲームデータを定期的に送受信するゲームデータ送受信手段、および
    前記ゲームデータ送受信手段によって受信された各通信相手のゲームデータに基づいてゲーム処理を実行するゲーム処理手段として機能させるためのゲームプログラム。
  2. 前記通信状態情報送信手段は、前記ゲームデータ送受信手段がいずれかの通信相手にゲームデータを送信するときに、自身のゲーム装置の通信状態情報を当該ゲームデータと一緒に送信することを特徴とする、請求項1に記載のゲームプログラム。
  3. 前記通信状態情報は、前記通信相手リストに含まれている通信相手のうち、前記通信状態判定手段によってその相手との通信が可能であると判定された通信相手のみから成るリストを含むことを特徴とする、請求項1に記載のゲームプログラム。
  4. 前記通信状態判定手段は、各通信相手から信号を最後に受信してからの経過時間をそれぞれ計時し、その経過時間が一定時間を超えたか否かによって、各通信相手と通信が可能か否かを判定することを特徴とする、請求項1に記載のゲームプログラム。
  5. 複数のゲーム装置間で相互にゲームデータを送受信し、他のゲーム装置から受信したゲームデータを利用して各ゲーム装置がゲーム処理を実行するゲームシステムに用いられるゲーム装置であって、
    自身のゲーム装置が属するネットワークに新たな通信相手として他のゲーム装置が接続されたときに、自身のゲーム装置の記憶部に保持されている通信相手の一覧を示す通信相手リストに、当該新たな通信相手を追加する通信相手リスト追加手段、
    各通信相手からの信号の受信状況に基づいて、自身のゲーム装置と各通信相手との間の通信が可能か否かをそれぞれ判定する通信状態判定手段、
    前記記憶部に保持されている、自身のゲーム装置と各通信相手との間の通信が可能か否かを示す通信状態情報を、前記通信状態判定手段の判定結果に基づいて随時更新する第1の通信状態情報更新手段、
    自身のゲーム装置の通信状態情報を各通信相手に定期的に送信する通信状態情報送信手段、
    各通信相手の通信状態情報を各通信相手からそれぞれ受信して前記記憶部に格納する通信状態情報受信手段、
    前記通信状態情報受信手段によって受信された各通信相手の通信状態情報を参照し、いずれかの通信相手の通信状態情報において通信不可能な相手として示されているゲーム装置が存在したときに、前記記憶部に保持されている通信状態情報において当該ゲーム装置が通信不可能な相手として示されるように、当該通信状態情報を更新する第2の通信状態情報更新手段、
    前記記憶部に保持されている、自身のゲーム装置の通信状態情報と各通信相手の通信状態情報を参照し、全ての通信状態情報において共通に通信不可能な相手として示されているゲーム装置が存在したときに、当該ゲーム装置を前記通信相手リストから削除する通信相手リスト削除手段、
    前記通信相手リストに示されている各通信相手とゲームデータを定期的に送受信するゲームデータ送受信手段、および
    前記ゲームデータ送受信手段によって受信された各通信相手のゲームデータに基づいてゲーム処理を実行するゲーム処理手段を備えるゲーム装置。
JP2005328149A 2005-11-11 2005-11-11 ゲームプログラムおよびゲーム装置 Active JP4850490B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2005328149A JP4850490B2 (ja) 2005-11-11 2005-11-11 ゲームプログラムおよびゲーム装置
US11/543,216 US8052528B2 (en) 2005-11-11 2006-10-05 Game program and game device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005328149A JP4850490B2 (ja) 2005-11-11 2005-11-11 ゲームプログラムおよびゲーム装置

Publications (2)

Publication Number Publication Date
JP2007130338A JP2007130338A (ja) 2007-05-31
JP4850490B2 true JP4850490B2 (ja) 2012-01-11

Family

ID=38068908

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005328149A Active JP4850490B2 (ja) 2005-11-11 2005-11-11 ゲームプログラムおよびゲーム装置

Country Status (2)

Country Link
US (1) US8052528B2 (ja)
JP (1) JP4850490B2 (ja)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8131802B2 (en) * 2007-10-05 2012-03-06 Sony Computer Entertainment America Llc Systems and methods for seamless host migration
JP5252676B2 (ja) * 2006-12-05 2013-07-31 株式会社バンダイナムコゲームス プログラム、情報記憶媒体、ゲーム機及びネットワークシステム
US8167712B2 (en) * 2007-08-08 2012-05-01 Sony Computer Entertainment America Inc. Method and apparatus for player replacement in an on-line game
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 任天堂株式会社 携帯型情報端末、携帯情報システム、携帯型情報端末制御プログラム
JP2012018657A (ja) 2010-06-11 2012-01-26 Nintendo Co Ltd 情報処理端末、情報処理システム、情報処理プログラム
JP5507350B2 (ja) 2010-06-11 2014-05-28 任天堂株式会社 携帯型情報端末、携帯型情報端末制御プログラム、携帯型情報システム、および、携帯型情報端末制御方法
JP4999213B2 (ja) 2010-09-17 2012-08-15 任天堂株式会社 情報処理プログラム、携帯端末装置、システム、情報処理方法及び通信システム
JP4882022B1 (ja) 2010-12-28 2012-02-22 任天堂株式会社 通信システム、情報処理プログラム、情報処理方法、情報処理装置、情報処理システム
JP5474876B2 (ja) 2011-06-02 2014-04-16 株式会社ソニー・コンピュータエンタテインメント 情報処理装置、サーバおよび情報処理システム

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040152517A1 (en) * 2000-02-14 2004-08-05 Yon Hardisty Internet based multiplayer game system
US7240093B1 (en) * 2000-02-29 2007-07-03 Microsoft Corporation Use of online messaging to facilitate selection of participants in game play
US6767287B1 (en) * 2000-03-16 2004-07-27 Sony Computer Entertainment America Inc. Computer system and method for implementing a virtual reality environment for a multi-player game
US6699125B2 (en) * 2000-07-03 2004-03-02 Yahoo! Inc. Game server for use in connection with a messenger server
JP2002233667A (ja) * 2001-02-08 2002-08-20 Namco Ltd ゲームシステム、プログラムおよび情報記憶媒体
US7549924B2 (en) * 2003-05-09 2009-06-23 Microsoft Corporation Instant messaging embedded games
JP2005087418A (ja) * 2003-09-16 2005-04-07 Trihedron Co Ltd 多者間ネットワークゲームにおけるデータ同期化方法
US7596633B2 (en) * 2003-10-20 2009-09-29 Sony Computer Entertainment America Inc. Island recovery in a peer-to-peer relay network
JP4033302B2 (ja) * 2004-05-07 2008-01-16 株式会社ソニー・コンピュータエンタテインメント 無線通信端末装置、無線インタフェース装置および無線ネットワーク参加方法
US7769409B2 (en) * 2004-06-23 2010-08-03 Sony Computer Entertainment America Inc. Network participant status evaluation
US7491123B2 (en) * 2004-07-29 2009-02-17 Nintendo Co., Ltd. Video game voice chat with amplitude-based virtual ranging
JP3938389B2 (ja) * 2005-10-14 2007-06-27 株式会社コナミデジタルエンタテインメント ゲーム装置

Also Published As

Publication number Publication date
US20070111792A1 (en) 2007-05-17
US8052528B2 (en) 2011-11-08
JP2007130338A (ja) 2007-05-31

Similar Documents

Publication Publication Date Title
JP4850490B2 (ja) ゲームプログラムおよびゲーム装置
US8055766B2 (en) Systems methods and user state files for enabling interactions between virtual and real world identities
WO2014020641A1 (ja) コンテンツ提供システム、コンテンツ提供機器、コンテンツ再生機器、制御方法、プログラム、及び記録媒体
JP2007013675A (ja) ストリーミング配信システム及びサーバ
US8007365B2 (en) Video game processing device, video game processing method and video game processing program
JP2007130337A (ja) ネットワークゲームシステムおよびネットワークゲームプログラム
CN110868607B (zh) 直播游戏互动方法、装置、服务器及可读存储介质
CN113382026B (zh) 数据处理方法、装置、相关设备及存储介质
US20170318524A1 (en) Communication apparatus, communication method, and storage medium
JP5818752B2 (ja) ゲーム制御装置及びプログラム
JP2009157437A (ja) 分散記憶システム
WO2021039983A1 (ja) 送信装置、送信方法及びプログラム
CN112494931A (zh) 云游戏控制方法、系统、服务器和计算机可读存储介质
US20230379529A1 (en) Distributed media stream playback suspension and synchronization
JP2009183410A (ja) ゲームネットワーク構築方法およびゲームネットワークシステム
CN110830381B (zh) 拥塞控制方法及相关设备
WO2006040970A1 (ja) 携帯通信端末
KR101087089B1 (ko) 네트워크 시스템, 노드 기기, 데이터 송신방법, 정보기록매체 및 프로그램
US20080215595A1 (en) Data distribution system, terminal apparatus, connection candidate introduction apparatus, information processing method and recording medium with program recorded thereon
JP4215073B2 (ja) 無線ネットワークに接続されるステーション、無線ネットワークにステーションを参加させる方法、およびプログラム
JP4718605B2 (ja) メッセージ管理方法及びシステム
JP5225764B2 (ja) 通信ゲームシステム及び通信ゲームプログラム
KR20050091587A (ko) 캐릭터가 활성화되는 온라인게임의 대기실 운영방법, 이를구현하기 위한 대기실 운영시스템 및 대기실운영프로그램이 기록된 컴퓨터로 읽을 수 있는 기록매체
JP2002149510A (ja) サーバ装置
JP2000163373A (ja) 通信端末再開システム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20081016

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20110902

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

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

R150 Certificate of patent or registration of utility model

Ref document number: 4850490

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20141028

Year of fee payment: 3

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