特許第5940231号(P5940231)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社 ディー・エヌ・エーの特許一覧

特許5940231情報処理システム、情報処理プログラム及び情報処理方法
<>
  • 特許5940231-情報処理システム、情報処理プログラム及び情報処理方法 図000002
  • 特許5940231-情報処理システム、情報処理プログラム及び情報処理方法 図000003
  • 特許5940231-情報処理システム、情報処理プログラム及び情報処理方法 図000004
  • 特許5940231-情報処理システム、情報処理プログラム及び情報処理方法 図000005
  • 特許5940231-情報処理システム、情報処理プログラム及び情報処理方法 図000006
  • 特許5940231-情報処理システム、情報処理プログラム及び情報処理方法 図000007
  • 特許5940231-情報処理システム、情報処理プログラム及び情報処理方法 図000008
  • 特許5940231-情報処理システム、情報処理プログラム及び情報処理方法 図000009
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】5940231
(24)【登録日】2016年5月27日
(45)【発行日】2016年6月29日
(54)【発明の名称】情報処理システム、情報処理プログラム及び情報処理方法
(51)【国際特許分類】
   H04L 29/06 20060101AFI20160616BHJP
   H04L 12/951 20130101ALI20160616BHJP
【FI】
   H04L13/00 305C
   H04L12/951
【請求項の数】5
【全頁数】9
(21)【出願番号】特願2016-5780(P2016-5780)
(22)【出願日】2016年1月15日
【審査請求日】2016年1月20日
【早期審査対象出願】
(73)【特許権者】
【識別番号】599115217
【氏名又は名称】株式会社 ディー・エヌ・エー
(74)【代理人】
【識別番号】110001210
【氏名又は名称】特許業務法人YKI国際特許事務所
(72)【発明者】
【氏名】坊野 博典
【審査官】 菊地 陽一
(56)【参考文献】
【文献】 特開平04−006930(JP,A)
【文献】 特開2007−143198(JP,A)
【文献】 特開2006−013664(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04L 29/06
H04L 12/951
(57)【特許請求の範囲】
【請求項1】
ネットワークを介してサーバから提供される情報を用いてクライアントにおいて電子ゲームアプリケーションによる処理を行う情報処理システムであって、
前記サーバは、
前記クライアントでの処理において、前記電子ゲームアプリケーションで使用されるコマンドでの構文エラーが発生しない処理単位毎に前記情報を分割して、分割された情報の各々を単一のパケットに含めるようにパケット化するパケット生成手段と、
前記パケット生成手段に生成されたパケットを前記クライアントに送信するパケット送信手段と、
を備えることを特徴とする情報処理システム。
【請求項2】
請求項1に記載の情報処理システムは、ネットワークを介して複数のプレイヤが参加するマルチプレイヤゲームを提供する情報処理システムであって、
前記パケット生成手段は、前記プレイヤ毎及び前記クライアントでの処理において構文エラーが発生しない処理単位毎に前記情報を分割して、分割された情報の各々を単一のパケットに含めるようにパケット化することを特徴とする情報処理システム。
【請求項3】
請求項1又は2に記載の情報処理システムであって、
前記サーバから前記クライアントへのパケット送信はデータグラム・ソケットにて行われることを特徴とする情報処理システム。
【請求項4】
ネットワークを介してサーバから提供される情報を用いてクライアントにおいて電子ゲームアプリケーションによる処理を行う情報処理プログラムであって、
コンピュータを、
前記クライアントでの処理において、前記電子ゲームアプリケーションで使用されるコマンドでの構文エラーが発生しない処理単位毎に前記情報を分割して、分割された情報の各々を単一のパケットに含めるようにパケット化するパケット生成手段と、
前記パケット生成手段に生成されたパケットを前記クライアントに送信するパケット送信手段と、
として機能させることを特徴とする情報処理プログラム。
【請求項5】
ネットワークを介してサーバから提供される情報を用いてクライアントにおいて電子ゲームアプリケーションによる処理を行う情報処理方法であって、
前記サーバにおいて、
前記クライアントでの処理において、前記電子ゲームアプリケーションで使用されるコマンドでの構文エラーが発生しない処理単位毎に前記情報を分割して、分割された情報の各々を単一のパケットに含めるようにパケット化するパケット生成処理と、
前記パケット生成処理に生成されたパケットを前記クライアントに送信するパケット送信処理と、
を行うことを特徴とする情報処理方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理システム、情報処理プログラム及び情報処理方法に関する。
【背景技術】
【0002】
インターネット等の情報通信網を介して複数のプレイヤが同時にプレイできるマルチプレイヤオンラインゲームが知られている。このようにオンラインで処理される電子ゲームシステムでは、ゲームで使用される情報がサーバとクライアントとの間で互いに送受信される。
【0003】
情報は、複数のパケットに分割されて、サーバからクライアント又はクライアントからサーバへ送信される。例えば、TCP/IPのようなストリーム・ソケットのプロトコルでは、図7に示すように、情報はパケットP1〜Pnに分割され、時間間隔Δt毎にパケットが順にサーバから送出される。各パケットは遅延時間tだけ遅れてサーバからクライアントに到着する。例えば、時刻t0に送出されたパケットP1は遅延時間t後の時刻t1に到着し、時刻t0+Δtに送出されたパケットP2は遅延時間t後の時刻t2(=t1+Δt)に到着する。
【0004】
もしパケットの送受信においてエラーが発生した場合、クライアントからサーバに対してパケットの再送信の要求が出され、エラーが発生したパケットがサーバからクライアントへ再送出される。このとき、クライアントが再送出されたパケットを受信するまでの遅延時間は2t[=2×(t1−t0)]となる。
【発明の概要】
【発明が解決しようとする課題】
【0005】
ところで、ネットゲームでは、サーバから送信された情報がクライアントのゲームアプリケーションにおけるコマンドの実行に使用される。
【0006】
例えば、マルチプレイヤゲームにおいてはユーザ毎にゲームパラメータが与えられるが、各クライアントではゲームパラメータ毎にコマンドが実行される。図8に示すように、ユーザA及びユーザBに対するパラメータ並びにユーザCに対するパラメータの一部がパケットP1に含められ、ユーザCに対するパラメータの残りがパケットP2に含められたとする。パケットP2が受信できなかった場合、ユーザCのパラメータの一部が欠けた状態となる。このような状態で、パケットP1に含まれるユーザCに対するパラメータの一部のみを用いてコマンドを実行すると構文エラーが発生し、コマンドによる処理は実行できない場合がある。そこで、クライアントからサーバへパケットP2の再送信の要求が出され、クライアントからサーバへパケットP2が再送される。その結果、遅延時間後に再送出されたパケットP2がエラー無く受信できた場合にようやくユーザCに対するパラメータを用いた処理が実行されることになる。
【0007】
そこで、本発明は、コマンド実行時にできるだけ構文エラーの発生を抑制し、処理を円滑に進めることを可能とする情報処理システム、情報処理プログラム及び情報処理方法を提供することを目的とする。
【課題を解決するための手段】
【0008】
本発明の1つの態様は、ネットワークを介してサーバから提供される情報を用いてクライアントにおいて電子ゲームアプリケーションによる処理を行う情報処理システムであって、前記サーバは、前記クライアントでの処理において、前記電子ゲームアプリケーションで使用されるコマンドでの構文エラーが発生しない処理単位毎に前記情報を分割して、分割された情報の各々を単一のパケットに含めるようにパケット化するパケット生成手段と、前記パケット生成手段に生成されたパケットを前記クライアントに送信するパケット送信手段と、を備えることを特徴とする情報処理システムである。
【0009】
本発明の別の態様は、ネットワークを介してサーバから提供される情報を用いてクライアントにおいて電子ゲームアプリケーションによる処理を行う情報処理プログラムであって、コンピュータを、前記クライアントでの処理において、前記電子ゲームアプリケーションで使用されるコマンドでの構文エラーが発生しない処理単位毎に前記情報を分割して、分割された情報の各々を単一のパケットに含めるようにパケット化するパケット生成手段と、前記パケット生成手段に生成されたパケットを前記クライアントに送信するパケット送信手段と、として機能させることを特徴とする情報処理プログラムである。
【0010】
本発明の別の態様は、ネットワークを介してサーバから提供される情報を用いてクライアントにおいて電子ゲームアプリケーションによる処理を行う情報処理方法であって、前記サーバにおいて、前記クライアントでの処理において、前記電子ゲームアプリケーションで使用されるコマンドでの構文エラーが発生しない処理単位毎に前記情報を分割して、分割された情報の各々を単一のパケットに含めるようにパケット化するパケット生成処理と、前記パケット生成処理に生成されたパケットを前記クライアントに送信するパケット送信処理と、を行うことを特徴とする情報処理方法である。
【0011】
ここで、ネットワークを介して複数のプレイヤが参加するマルチプレイヤゲームを提供する情報処理であって、前記パケット生成手段(処理)は、前記プレイヤ毎及び前記クライアントでの処理において構文エラーが発生しない処理単位毎に前記情報を分割して、分割された情報の各々を単一のパケットに含めるようにパケット化することが好適である。
【0012】
また、前記サーバから前記クライアントへのパケット送信はデータグラム・ソケットにて行われることが好適である。
【発明の効果】
【0013】
本発明によれば、電子ゲームにおいてパケットの受信エラーに起因するコマンド実行時における構文エラーの発生を抑制し、処理を円滑に進めることができる。
【図面の簡単な説明】
【0014】
図1】本発明の実施の形態における情報処理システムの構成を示す図である。
図2】本発明の実施の形態におけるサーバの構成を示す図である。
図3】本発明の実施の形態におけるクライアントの構成を示す図である。
図4】本発明の実施の形態におけるパケットの送受信処理を示すフローチャートである。
図5】本発明の実施の形態におけるパケットの構成方法を説明する図である。
図6】本発明の実施の形態におけるパケットの構成方法を説明する図である。
図7】パケットの送受信及び再送信について説明する図である。
図8】従来のパケットの構成方法を説明する図である。
【発明を実施するための形態】
【0015】
本発明の実施の形態における情報処理システム100は、図1に示すように、サーバ102及びクライアント104を含んで構成される。サーバ102とクライアント104は、インターネット等の情報通信網106を介して情報交換可能に接続される。本実施の形態では、サーバ102から複数のプレイヤが参加可能なマルチプレイヤゲームを提供する態様について説明するので、サーバ102は複数のクライアント104(104a・・・104n)と接続される。
【0016】
サーバ102は、図2に示すように、処理部10、記憶部12、入力部14、出力部16及び通信部18を含んで構成される。処理部10は、CPU等の演算処理を行う手段を含む。処理部10は、記憶部12に記憶されているゲーム提供プログラムを実行することによって、本実施の形態における情報処理システム100において複数のクライアント104を接続したマルチプレイヤゲームを提供するための機能を実現する。記憶部12は、半導体メモリやメモリカード等の記憶手段を含む。記憶部12は、処理部10とアクセス可能に接続され、ゲーム提供プログラム、その処理に必要な情報を記憶する。入力部14は、情報を入力する手段を含む。入力部14は、例えば、管理者からの入力を受けるキーボード、タッチパネル、ボタン等を備える。出力部16は、管理者から入力情報を受け付けるためのユーザインターフェース画面(UI)等のサーバ102での処理結果を出力する手段を含む。出力部16は、例えば、管理者に対して画像を呈示するディスプレイを備える。通信部18は、情報通信網106を介して、クライアント104との情報の通信を行うインターフェースを含んで構成される。通信部18による通信は有線及び無線を問わない。
【0017】
クライアント104は、図3に示すように、処理部20、記憶部22、入力部24、出力部26及び通信部28を含んで構成される。処理部20は、CPU等の演算処理を行う手段を含む。処理部20は、記憶部22に記憶されているクライアントプログラムを実行することによって、本実施の形態における情報処理システム100におけるマルチプレイヤゲームの端末としての機能を実現する。例えば、クライアントプログラムは、クライアント104においてウェブブラウザの機能を利用してクライアント104から提供される情報(ゲームのパラメータ等)を用いてマルチプレイヤゲームにおける処理を実現する。記憶部22は、半導体メモリやメモリカード等の記憶手段を含む。記憶部22は、処理部20とアクセス可能に接続され、クライアントプログラム、その処理に必要な情報を記憶する。入力部24は、情報を入力する手段を含む。入力部24は、例えば、ユーザからの入力を受けるキーボード、タッチパネル、ボタン等を備える。出力部26は、ユーザから入力情報を受け付けるためのユーザインターフェース画面(UI)や投稿された情報を呈示する画面等のクライアント104での処理に必要な情報を出力する手段を含む。出力部26は、例えば、ユーザに対して画像を呈示するディスプレイを備える。通信部28は、情報通信網106を介して、サーバ102との情報の通信を行うインターフェースを含んで構成される。通信部28による通信は有線及び無線を問わない。
【0018】
クライアント104は、例えば、パーソナルコンピュータ、タブレット端末、スマートフォン端末、携帯電話等とすることができる。
【0019】
なお、本実施の形態では、サーバ102と接続されているクライアント104a,104b,104cを使用するプレイヤA,B,Cが電子ゲームをプレイする態様を例に説明する。
【0020】
電子ゲームでは、クライアント104a〜104cにおけるプレイヤA〜Cによるプレイの状況に応じてゲームで使用される情報(パラメータ等)が変更される処理が行われる。例えば、クライアント104a〜104cはサーバ102へ変更された情報を送信する。サーバ102は、変更された情報を記憶部12に記憶して管理すると共に、クライアント104a〜104cから受信した情報を纏めてクライアント104a〜104cへ送信する。
【0021】
以下、図4のフローチャートを参照して、サーバ102から各クライアント104へ情報を送信する際の処理について説明する。
【0022】
ステップS10では、サーバ102からクライアント104へ送信される情報がパケット化される。当該ステップでの処理によって、サーバ102はパケット生成手段として機能する。処理部10は、記憶部12に予め記憶されている各クライアント104a〜104cのゲームに関する情報を読み出し、通信プロトコルに応じた情報の伝送単位のサイズに分割してパケット化する。
【0023】
例えば、TCPパケットの場合、データ部として送信可能なサイズに情報を分割した後、分割された情報に先頭から順にシーケンス番号を割り当てる。そして、分割された情報毎に送信元ポート番号、宛先ポート番号、シーケンス番号、ACK番号等のヘッダ部を付したパケットを生成する。
【0024】
また、例えば、UDPパケットの場合、データ部として送信可能なサイズに情報を分割する。そして、分割された情報毎に送信元ポート番号、宛先ポート番号、メッセージ長等のヘッダ部を付したパケットを生成する。
【0025】
ここで、本実施の形態では、各クライアント104での電子ゲームアプリケーションの処理において構文エラーが発生しない処理単位毎に情報を分割して、分割された情報の各々を単一のパケットに含めるようにパケット化する。すなわち、1つのパケットに含まれる情報は、各クライアント104がそのパケットに含まれる情報だけで電子ゲームアプリケーションのコマンドが実行できる単位とする。言い換えると、あるパケットに含まれる情報を用いてコマンドを実行するために他のパケットに含まれる情報を必要としないように情報を分割してパケット化する。
【0026】
例えば、クライアント104の電子ゲームアプリケーションにおいて、各プレイヤA〜Cのヒットポイント(HP)を組み合わせて1つの引数としてヒットポイント(HP)を画面表示させるコマンドがあった場合、図5(a)に示すように、プレイヤA〜Cのヒットポイント(HP)を組み合わせたデータが1つのパケットに含まれるようにパケット化する。すなわち、図5(b)に示すように、プレイヤA〜Cのヒットポイントが異なるパケットに分割されてパケット化されないようにする。
【0027】
また、例えば、クライアント104の電子ゲームアプリケーションにおいて、プレイヤA〜C毎にヒットポイント(HP)、マジックポイント(MP)を組み合わせて1つの引数としてヒットポイント(HP)を画面表示させるコマンドがあった場合、図6(a)に示すように、プレイヤA〜C毎にヒットポイント(HP)及びマジックポイント(MP)を組み合わせたデータが1つのパケットに含まれるようにパケット化する。すなわち、図6(b)に示すように、プレイヤA〜C毎のヒットポイント(HP)及びマジックポイント(MP)が異なるパケットに分割されてパケット化されないようにする。
【0028】
なお、情報のパケット化はこれらの例に限定されるものではなく、各パケットに含まれる情報毎に各クライアント104での電子ゲームアプリケーションの処理において構文エラーが発生しない処理単位毎に情報を分割して、分割された情報の各々を単一のパケットに含めるようにパケット化するものであればよい。
【0029】
ステップS12では、サーバ102からクライアント104へパケットが送信される。当該ステップにおける処理によって、サーバ102はパケット送信手段として機能する。サーバ102は、通信部18を介して、ゲームに参加しているプレイヤA〜Cが使用しているクライアント104a〜104cに対してステップS10において生成されたパケットを送信する。
【0030】
ステップS14では、クライアント104においてパケットが受信される。当該ステップにおける処理によって、クライアント104はパケット受信手段として機能する。クライアント104a〜104cは、通信部28を介して、ステップS12においてクライアント104から送信されたパケットを受信する。
【0031】
このとき、インターネット等の情報通信網の障害や通信部18、通信部28の不具合等によってパケットが受信できない受信エラーが生ずることができる。その場合、クライアント104は、クライアント104に対して受信できなかったパケットを特定して再送信の要求を行う。クライアント104では、パケットの再送信の要求を受信すると、対象となるパケットを再度送信する。
【0032】
ステップS16では、パケットに含まれる情報を用いた処理が行われる。当該ステップにおける処理によって、クライアント104はゲーム進行手段として機能する。クライアント104a〜104cは、それぞれステップS14にて受信したパケットに含まれる情報を用いて電子ゲームアプリケーションのコマンドを実行して電子ゲームを進行させる。
【0033】
このとき、本実施の形態では、各クライアント104での電子ゲームアプリケーションの処理において構文エラーが発生しない処理単位毎に情報を分割して、分割された情報の各々を単一のパケットに含めるようにパケット化することによって、1つのパケットに含まれている情報だけで処理を進められるようになる。したがって、パケットの送受信時にエラーが発生し、パケットの欠落が生じた場合であっても、受信できたパケットに含まれる情報だけを用いて電子ゲームアプリケーションにおける処理において構文エラーを発生させることなく処理を進めることが可能となる。
【0034】
また、図5(b)や図6(b)のように、別々のパケットに構文エラーが発生しない処理単位の情報が分割されて含まれている場合、1つのパケットが正常に受信できなかった場合、そのパケットに対して再送信要求を行ってサーバ102からパケットが再度送信されてくるまで他のパケットに含まれていた情報をバッファ等に保持しておく必要がある。これに対して、本実施の形態のように電子ゲームアプリケーションの処理において構文エラーが発生しない処理単位毎に情報を分割して、分割された情報の各々を単一のパケットに含めるようにパケット化することによって、1つのパケットが正常に受信できなかった場合であっても他のパケットに含まれている情報を保持しておく必要がなくなる。
【0035】
特に、UDP等のデータグラム・ソケットのプロトコルでは、パケットを順番に受信する必要がないので、送受信におけるパケットの欠落が生じたとしても欠落を問題とすることなく、受信できたパケットに含まれる情報だけを用いてクライアント104での処理を進めておくことができる。
【0036】
なお、本実施の形態では情報処理システムを例に説明したが、本発明の適用範囲はこれに限定されるものではなく、情報通信網を介して情報を送受信するシステムであれば適用することができる。例えば、複数のユーザがチャットを行うマルチチャットシステム、複数のユーザが音声によりチャットを行うマルチボイスチャットシステム等にも適用が可能である。特に、パケットの欠落による処理の遅延が問題となるようなリアルタイム性が要求されるようなシステムにおいて本発明の効果は顕著となる。
【符号の説明】
【0037】
10 処理部、12 記憶部、14 入力部、16 出力部、18 通信部、20 処理部、22 記憶部、24 入力部、26 出力部、28 通信部。
【要約】
【課題】電子ゲームにおいてパケットの受信エラーに起因するコマンド実行時における構文エラーの発生を抑制し、処理を円滑に進めることを可能とする。
【解決手段】クライアント104での処理において構文エラーが発生しない処理単位毎に情報を分割して、分割された情報の各々を単一のパケットに含めるようにパケット化し、生成されたパケットをクライアント104に送信するサーバ102を備えた情報処理システムとする。
【選択図】図4
図1
図2
図3
図4
図5
図6
図7
図8