(57)【要約】  本願はゲームコンテンツの同期表示に関する方法、装置および記憶媒体を開示し、該方法はゲームアプリケーションの第１クライアントでワンラウンドのゲームを実行する場合、第１操作命令を検出し、第１クライアントが第１アカウントでログインし、ワンラウンドのゲームに参加するアカウントに第１アカウントと第２アカウントが含まれ、第２アカウントが第２クライアントをログインするために使用するものであり、第１操作命令に基づいてワンラウンドのゲームにおいて第１アカウントに対応する第１操作対象が実行する、第１操作命令に対応する第１操作を決定し、第１クライアントに表示する第１コンテンツを決定し、第１コンテンツと同時に表示する第２コンテンツを取得し、第２コンテンツは第２操作対象が第２操作を実行する際に第２クライアントに表示するコンテンツであり、第１クライアントに第１コンテンツと第２コンテンツを同時に表示することを含む。【選択図】図２
2020528314.tif 000002
【特許請求の範囲】
【請求項１】
端末に適用されるゲームコンテンツの同期表示方法であって、
ゲームアプリケーションの第１クライアントで前記ゲームアプリケーションのワンラウンドのゲームを実行する場合、前記第１クライアントから第１操作命令を検出することであって、前記第１クライアントが第１アカウントでログインし、前記ワンラウンドのゲームに参加するアカウントに前記第１アカウントと第２アカウントが含まれ、前記第２アカウントが前記ゲームアプリケーションの第２クライアントがログインするために使用するものであることと、
前記第１操作命令に基づいて、前記ワンラウンドのゲームにおいて前記第１アカウントに対応する第１操作対象が実行する、前記第１操作命令に対応する第１操作を決定することと、
前記第１操作対象が前記第１操作を実行する際に前記第１クライアントに表示する必要がある第１コンテンツを決定し、前記第１コンテンツと同時に表示する必要がある第２コンテンツを取得することであって、前記第２コンテンツは、前記ワンラウンドのゲームにおける前記第２アカウントに対応する第２操作対象が第２操作を実行する際に前記第２クライアントに表示する必要があるコンテンツであることと、
前記第１クライアントに前記第１コンテンツと前記第２コンテンツを同時に表示することと、を含むことを特徴とするゲームコンテンツの同期表示方法。
【請求項２】
前記第１コンテンツと同時に表示する必要がある第２コンテンツを取得することは、
前記第２クライアントから送信された第１属性変化情報を取得することであって、前記第１属性変化情報が、前記ワンラウンドのゲームにおいて前記第２操作対象が前記第２操作を実行することによる属性の変化を記述するための情報であり、前記第２操作が、前記第２クライアントで検出された第２操作命令によってトリガされる操作であることと、前記第１クライアントで、前記第１属性変化情報に基づいて前記第２コンテンツを決定することと、を含み、
前記第１クライアントに前記第１コンテンツと前記第２コンテンツを同時に表示することは、
前記第１属性変化情報に基づいて決定された前記第２コンテンツを前記第１クライアントのゲーム画面に重ねて表示することを含み、前記第１クライアントのゲーム画面が前記第１コンテンツを表示する画面であることを特徴とする請求項１に記載の方法。
【請求項３】
前記第１属性変化情報に基づいて決定された前記第２コンテンツを前記第１クライアントのゲーム画面に重ねて表示することは、
前記第１コンテンツを前記第１クライアントのゲーム画面に第１表示方式で表示しながら、前記第２コンテンツを前記第１クライアントのゲーム画面に第２表示方式で重ねて表示することを含み、前記第１表示方式と前記第２表示方式が異なることを特徴とする請求項２に記載の方法。
【請求項４】
前記第２クライアントから送信された第１属性変化情報を取得することは、
前記第２クライアントが同期サーバを介して転送する第１属性変化情報をデータ伝送チャネルで受信することを含み、前記データ伝送チャネルが、前記同期サーバに接続され、かつユーザデータグラムプロトコルを用いてデータを伝送するチャネルであることを特徴とする請求項２に記載の方法。
【請求項５】
前記第１操作対象が第１操作を実行する際に前記第１クライアントに表示する必要がある第１コンテンツを決定することは、
前記第１操作が第１操作対象の位置属性を変更する操作である場合、第１操作対象の位置属性の変更後における所在位置を示すための第１コンテンツを前記第１クライアントで決定することと、
前記第１操作が前記第１操作対象の射撃操作である場合、射撃に関するものであることを示す前記第１コンテンツを前記第１クライアントで決定することと、のうちの少なくとも１つを含むことを特徴とする請求項１に記載の方法。
【請求項６】
前記第１操作を実行する際に前記第１クライアントに表示する必要がある第１コンテンツを前記第１クライアント上で取得した後、前記方法は、
データ伝送チャネルで第２属性変化情報を同期サーバに伝送することをさらに含み、前記同期サーバは、前記第２クライアントに前記第２属性変化情報を転送し、前記第２属性変化情報が、前記位置属性の変化および／または前記射撃操作に関する属性の変化を記述するための情報であり、前記データ伝送チャネルが、前記同期サーバに接続され、かつユーザデータグラムプロトコルを用いてデータを伝送するチャネルであることを特徴とする請求項５に記載の方法。
【請求項７】
前記ゲームアプリケーションの第１クライアントで前記ゲームアプリケーションのワンラウンドのゲームを実行することは、
前記第１クライアントが指示情報を受信した場合、前記指示情報の指示に従って前記第１クライアントで前記ワンラウンドのゲームを実行することを含み、前記指示情報は、前記第１クライアントと前記第２クライアントに同じタイミングで前記ワンラウンドのゲームを実行するように指示し、前記指示情報は、更に前記第１クライアントと前記第２クライアントに同じタイミングでノンプレイヤーコントロールオブジェクトに関連するイベントを実行するように指示することを特徴とする請求項１に記載の方法。
【請求項８】
ゲームアプリケーションの第１クライアントが前記ゲームアプリケーションのワンラウンドのゲームを実行する際に、前記第１クライアントがオフラインした場合、前記方法は、
前記第２クライアントから前記ワンラウンドのゲームの現在の進捗時間を取得することと、
前記ワンラウンドのゲームにおける複数の基準時間マークから、前記現在の進捗時間に隣接して、かつ到来した目標基準時間マークを決定することであって、前記基準時間マークが、前記ワンラウンドのゲームにおける進捗時間を予めマーキングした時刻であることと、
前記第１クライアントで前記ワンラウンドのゲームをリロードし、リロードされた前記ワンラウンドのゲームのゲーム画面を第１画面から第２画面に更新することであって、前記第１画面は、前記ワンラウンドのゲームの前記目標基準時間マークにおけるゲーム画面であり、前記第２画面は、前記ワンラウンドのゲームの前記現在の進捗時間におけるゲーム画面であること、をさらに含むことを特徴とする請求項１に記載の方法。
【請求項９】
データ伝送チャネルで第２属性変化情報を同期サーバに送信する前に、前記方法は、
属性変化情報を送信する第１メッセージを前処理することをさらに含み、前記前処理は、同じタイプの複数の前記第１メッセージを、同じタイプの複数の前記第１メッセージを示す１つの第２メッセージに生成することと、
すべての第２メッセージを１つのメッセージパケットにパッケージ化することと、
前記メッセージパケットを圧縮処理することと、を含むことを特徴とする請求項６に記載の方法。
【請求項１０】
プロセッサと、前記プロセッサに接続されたメモリとを備えるゲームコンテンツの同期表示装置であって、前記メモリに機械読み取り可能な命令ユニットが記憶され、前記機械読み取り可能な命令ユニットは、
ゲームアプリケーションの第１クライアントで前記ゲームアプリケーションのワンラウンドのゲームを実行する場合、前記第１クライアントから第１操作命令を検出する検出ユニットであって、第１クライアントが第１アカウントでログインし、前記ワンラウンドのゲームに参加するアカウントに前記第１アカウントと第２アカウントが含まれ、前記第２アカウントが前記ゲームアプリケーションの第２クライアントがログインするために使用するものである検出ユニットと、
前記第１操作命令に基づいて、前記ワンラウンドのゲームにおいて前記第１アカウントに対応する第１操作対象が実行する、前記第１操作命令に対応する第１操作を決定する応答ユニットと、
前記第１操作対象が前記第１操作を実行する際に前記第１クライアントに表示する必要がある第１コンテンツを決定し、前記第１コンテンツと同時に表示する必要がある第２コンテンツを取得する第１取得ユニットであって、前記第２コンテンツは、前記ワンラウンドのゲームにおける前記第２アカウントに対応する第２操作対象が第２操作を実行する際に前記第２クライアントに表示する必要があるコンテンツである第１取得ユニットと、
前記第１クライアントに前記第１コンテンツと前記第２コンテンツを同時に表示する表示ユニットと、を備えることを特徴とするゲームコンテンツの同期表示装置。
【請求項１１】
前記第１取得ユニットは、
前記第２クライアントから送信された第１属性変化情報を取得する取得モジュールであって、第１属性変化情報が、前記ワンラウンドのゲームにおいて第２操作対象が第２操作を実行することによる属性の変化を記述するための情報であり、前記第２操作が、前記第２クライアントで検出された第２操作命令によってトリガされる操作である取得モジュールと、
前記第１クライアントで、前記第１属性変化情報に基づいて前記第２コンテンツを決定する決定モジュールと、を備え、
前記表示ユニットは、前記第１属性変化情報に基づいて決定された前記第２コンテンツを前記第１クライアントのゲーム画面に重ねて表示し、前記第１クライアントのゲーム画面が前記第１コンテンツを表示する画面であることを特徴とする請求項１０に記載の装置。
【請求項１２】
前記表示ユニットは、
前記第１コンテンツを前記第１クライアントのゲーム画面に第１表示方式で表示しながら、前記第２コンテンツを前記第１クライアントのゲーム画面に第２表示方式で重ねて表示する表示モジュールを備え、前記第１表示方式と前記第２表示方式が異なることを特徴とする請求項１１に記載の装置。
【請求項１３】
前記装置は、
前記第１クライアントがオフラインした場合、前記第２クライアントから前記ワンラウンドのゲームの現在の進捗時間を取得する第２取得ユニットと、
前記ワンラウンドのゲームにおける複数の基準時間マークから、前記現在の進捗時間に隣接して、かつ到来した目標基準時間マークを決定する決定モジュールであって、前記基準時間マークが、前記ワンラウンドのゲームにおける進捗時間を予めマーキングした時刻である決定モジュールと、
前記第１クライアントで前記ワンラウンドのゲームをリロードし、リロードされた前記ワンラウンドのゲームのゲーム画面を第１画面から第２画面に更新するロードユニットであって、前記第１画面は、前記ワンラウンドのゲームの前記目標基準時間マークにおけるゲーム画面であり、前記第２画面は、前記ワンラウンドのゲームの前記現在の進捗時間におけるゲーム画面であるロードユニットと、をさらに備えることを特徴とする請求項１０に記載の装置。
【請求項１４】
記憶されたプログラムを含む記憶媒体であって、前記プログラムが実行されるときには、前記請求項１〜９のいずれか１項に記載の方法が実行されることを特徴とする記憶媒体。
【請求項１５】
メモリと、プロセッサと、前記メモリ上に記憶され、前記プロセッサで実行可能なコンピュータプログラムとを備える電子装置であって、前記プロセッサは、前記コンピュータプログラムを介して前記請求項１〜９のいずれか１項に記載の方法を実行することを特徴とする電子装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本願は、２０１７年０７月２４日に中国特許局に出願された、出願番号が２０１７１０６１０００２．６であり、出願名称が「ゲームコンテンツの同期表示方法および装置」である中国特許出願の優先権を主張し、そのすべての内容が参照することにより本願に組み込まれる。
【０００２】
本願は、インターネット分野に関し、特に、ゲームコンテンツの同期表示方法、装置および記憶媒体に関する。
【背景技術】
【０００３】
マルチメディア技術の発展と無線ネットワークの普及に伴い、人々のエンターテイメントはますます豊かになり、例えば、手持ちのメディアデバイスを介してゲームをオンラインでプレイすることがあり、ゲームの種類は様々であり、例えば、弾幕地獄ゲーム、アドベンチャーゲーム、シミュレーションゲーム、ロールプレイングゲーム、カジュアルゲームやほかのゲームなどがある。
【０００４】
その中で、ほとんどのタイプのゲームはネットワーク化されることができ、複数のプレイヤーは同時にオンラインでプレイすることができる。但し、弾幕地獄ゲームというタイプのゲームについて、スタンドアロンゲームに属するため、複数のプレイヤーはオンラインでプレイすることができない。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
本願の実施例は、ゲームコンテンツの同期表示方法、装置および記憶媒体を提供している。
【課題を解決するための手段】
【０００６】
本願の実施例の一態様によれば、端末に適用されるゲームコンテンツの同期表示方法が提供されており、該表示方法は、
ゲームアプリケーションの第１クライアントでゲームアプリケーションのワンラウンドのゲームを実行する場合、第１クライアントから第１操作命令を検出することであって、第１クライアントが第１アカウントでログインし、ワンラウンドのゲームに参加するアカウントに第１アカウントと第２アカウントが含まれ、第２アカウントがゲームアプリケーションの第２クライアントがログインするために使用するものであることと、前記第１操作命令に基づいて、前記ワンラウンドのゲームにおいて前記第１アカウントに対応する第１操作対象が実行する、前記第１操作命令に対応する第１操作を決定することと、前記第１操作対象が第１操作を実行する際に第１クライアントに表示する必要がある第１コンテンツを決定し、第１コンテンツと同時に表示する必要がある第２コンテンツを取得することであって、第２コンテンツは、ワンラウンドのゲームにおける第２アカウントに対応する第２操作対象が第２操作を実行する際に第２クライアントに表示する必要があるコンテンツであることと、第１クライアントに第１コンテンツと第２コンテンツを同時に表示することと、を含む。
【０００７】
本発明の実施例の別の態様によれば、同期表示装置が提供されており、前記装置は、プロセッサと、前記プロセッサに接続されたメモリとを備え、前記メモリに機械読み取り可能な命令ユニットが記憶され、前記機械読み取り可能な命令ユニットは、
ゲームアプリケーションの第１クライアントでゲームアプリケーションのワンラウンドのゲームを実行する場合、第１クライアントから第１操作命令を検出する検出ユニットであって、第１クライアントが第１アカウントでログインし、ワンラウンドのゲームに参加するアカウントに第１アカウントと第２アカウントが含まれ、第２アカウントがゲームアプリケーションの第２クライアントがログインするために使用するものである検出ユニットと、
前記第１操作命令に基づいて、前記ワンラウンドのゲームにおいて前記第１アカウントに対応する第１操作対象が実行する、前記第１操作命令に対応する第１操作を決定する応答ユニットと、
前記第１操作対象が前記第１操作を実行する際に前記第１クライアントに表示する必要がある第１コンテンツを決定し、前記第１コンテンツと同時に表示する必要がある第２コンテンツを取得する第１取得ユニットであって、前記第２コンテンツは、前記ワンラウンドのゲームにおける前記第２アカウントに対応する第２操作対象が第２操作を実行する際に前記第２クライアントに表示する必要があるコンテンツである第１取得ユニットと、
前記第１クライアントに前記第１コンテンツと前記第２コンテンツを同時に表示する表示ユニットと、を備える。
【０００８】
本願は、また、記憶されたプログラムを含む記憶媒体を提供しており、前記プログラムが実行される場合、前記方法を実行させる。
【０００９】
本願は、また、メモリと、プロセッサと、前記メモリ上に記憶され、前記プロセッサで実行可能なコンピュータプログラムとを備える電子装置を提供しており、前記プロセッサは、前記コンピュータプログラムを介して前記方法を実行する。
【図面の簡単な説明】
【００１０】
ここで説明した図面は、本願の更なる理解を提供するために用いられ、本願の一部を構成し、本願の例示的な実施例及びその説明は、本願を解釈するために用いられ、本発明に対する不当な限定を構成しない。
【図１】本発明の一実施例によるゲームコンテンツの同期表示方法のハードウェア環境の概略図である。
【図２】本発明の一実施例によるゲームコンテンツの同期表示方法のフローチャートである。
【図３】本発明の一実施例によるゲーム画面の概略図である。
【図４】本発明の一実施例によるゲーム画面の概略図である。
【図５】本発明の一実施例によるゲームサービスアーキテクチャの概略図である。
【図６】本発明の一実施例によるゲーム画面の概略図である。
【図７】本発明の一実施例によるゲーム実行の概略図である。
【図８】本発明の一実施例によるゲーム実行の概略図である。
【図９】本発明の一実施例によるゲームコンテンツの同期表示装置の概略図である。
【図１０】本発明の一実施例による端末の構成ブロック図である。
【発明を実施するための最良の形態】
【００１１】
当業者が本願の解決策をよりよく理解できるようにするために、以下では、本願の実施例の図面を参照しながら、本願の実施例における技術的解決策を明確かつ完全に説明し、明らかに、記載された実施例は、本願の一部の実施例にすぎず、すべての実施例ではない。本願の実施例に基づいて、当業者が創造的な労働がなされていない前提で得られた他のすべての実施例は、本願の保護範囲に属するべきである。
【００１２】
説明すべきものとして、本願の明細書や特許請求の範囲および上記図面における用語「第１」、「第２」などは、特定の順序や前後の順序を説明するために使用される必要がなく、類似の対象を区別するために使用される。ここで説明する本願の実施例が、ここで図示または説明するもの以外の順序で実施されることができるように、このように使用されるデータは適切な状況で交換可能であるということが理解されるべきである。さらに、用語「含む」や「有する」およびそれらの任意の変形は、非排他的な包含をカバーすることを意図し、例えば、一連のステップやユニットを含むプロセス、方法、システム、製品またはデバイスは、明確に記載されているステップやユニットに限定される必要がなく、明確に記載されていないものやこれらのプロセス、方法、製品またはデバイスに固有のその他のステップやユニットを含むことができる。
【００１３】
まず、本願の実施例を説明する過程中に現れる一部の名詞または用語は、以下の説明に適用可能である。
【００１４】
ＭＭＯＲＰＧは、Ｍａｓｓｉｖｅ  Ｍｕｌｔｉｐｌａｙｅｒ  Ｏｎｌｉｎｅ  Ｒｏｌｅ−ＰｌａｙＧａｍｅの略語であり、マルチプレイヤーオンライン戦術競技ゲームと訳される。
【００１５】
ＲＴＳは、Ｒｅａｌ−Ｔｉｍｅ  Ｓｔｒａｔｅｇｙ  Ｇａｍｅの略語であり、リアルタイム戦略ゲームと訳され、ストラテジストゲーム（Ｓｔｒａｔｅｇｙ  Ｇａｍｅ）の一種であり、ゲームは、ストラテジストゲームでより一般的なターンベースなものではなく、リアルタイムで行われるものであり、さらに、プレイヤーは、ゲームで将軍を演じ、軍隊を派遣してこのような巨視的な操作を行う。
【００１６】
ＮＰＣは、Ｎｏｎ−Ｐｌａｙｅｒ−Ｃｏｎｔｒｏｌｌｅｄ  Ｃｈａｒａｃｔｅｒの略語であり、ノンプレイヤーキャラクターと訳される。
【００１７】
ＴＣＰは、Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌの略語であり、伝送制御プロトコルと訳され、ＩＥＴＦのＲＦＣ  ７９３によって定義される、接続に向けた信頼性の高い、バイトストリームに基づくトランスポート層通信プロトコルである。
【００１８】
ＵＤＰは、Ｕｓｅｒ  Ｄａｔａｇｒａｍ  Ｐｒｏｔｏｃｏｌの略称であり、ユーザデータグラムプロトコルと訳され、ＯＳＩ（Ｏｐｅｎ  Ｓｙｓｔｅｍ  Ｉｎｔｅｒｃｏｎｎｅｃｔｉｏｎ、オープンシステム相互接続）参照モデルにおけるコネクションレストランスポート層プロトコルであり、トランザクションに向けた簡単で信頼性のない情報伝送サービスを提供し、ＩＥＴＦ  ＲＦＣ  ７６８は、ＵＤＰの正式な仕様である。ＵＤＰのＩＰパケット内のプロトコル番号は１７である。弾幕地獄ゲームは、スクロールシューティングゲームのイメージ化描写であり、弾幕地獄ゲームは、目と手の間の協力、プレイヤーコントロールキャラクターの移動計画能力に対する要求が高くて、「弾幕」という言葉は、軍事用語から由来し、「幕の落ちるように降り注ぐ弾丸」を意味する。それはマルチプレイヤーオンラインゲームに改造される際、複雑な弾幕や敵のＡＩ（Ａｒｔｉｆｉｃｉａｌ  Ｉｎｔｅｌｌｉｇｅｎｃｅ、即ち、人工知能を採用するキャラクター）ユニットが多いなどの特徴があるため、例えば、ゲーム内でワンラウンドのゲームをどのように確立するか？確立された同一ラウンドのゲームに複数のゲーム参加者をどのように追加するか？同一ラウンドのゲームにおいて他の参加者のゲーム状況に関するコンテンツをどのようにローカルで表示するか？各端末で操作者のゲーム行為、ＡＩ行為の一致性をどのように保障するか？各参加者間でどのように通信することで情報伝達の適時性などを保障するか？といった多くの問題が存在している。
【００１９】
本願のいくつかの実施例では、以下のような表示同期の解決策が提供されている。
【００２０】
解決策１は、ＭＭＯＲＰＧゲームについて、Ｃ／Ｓ同期モードを採用することである。
【００２１】
Ｃ／Ｓ同期モードの主な特徴は、ゲームロジックがサーバで実行され、クライアントがプレイヤーの操作を収集してサーバに送信し、サーバが固定のフレームレートまたはイベントトリガー方式でゲームの実行結果を各クライアントにブロードキャストしてからクライアントによって再生される、ということである。通常、クライアントはプレイヤーの移動、スキルキャスティングなどに対して、限られた事前表現を行うこともあり、但し、最終的な結果はサーバに基づいているため、事前表現はさらなるプリング現象をもたらす可能性がある。
【００２２】
上記の解決策は、ＭＭＯＲＰＧのようなマルチプレイゲームに適用され、このようなゲームは、同画面に人数が多く、図３に示すようにキャラクターＡ、キャラクターＢ、キャラクターＣなどが含まれ、操作ボタンによって操作されることができるが、操作が比較的少なく、操作の遅延に対しては要求が高くない。
【００２３】
解決策２は、ＲＴＳ類またはＭＯＢＡ類のゲームについて、フレーム同期モードを採用することである。
【００２４】
フレーム同期モードの主な特徴は、ゲームロジックが各クライアントで実行され、サーバがフレーム単位で各クライアントの入力（ゲーム操作に関する入力）を受信し、各クライアントにブロードキャストする、ということである。各クライアントは、サーバによって提供されたフレームに従って実行を駆動し、クライアントのゲームアルゴリズムを慎重に設計することにより、サーバによって配信された同じフレーム入力に基づいて、完全に一致した実行結果を得ることができ、フレームごとの入力の遅延による体験の低下を低減させるために、一部のゲームは、いくつかの操作上の事前表現を実行することもある。
【００２５】
上記の解決策は、クライアントが比較的少なくて、ゲーム内のユニットが比較的多く、戦略に重視して操作に軽視するタイプのプレイ方法のゲームに適し、図４に示すように、キャラクターＦとキャラクターＧが含まれ、操作ボタンによって操作されることができる。
【００２６】
上記の解決策１には、以下の技術的課題がある。
【００２７】
（１）解決策１では、ゲームロジックがサーバで実行され、サーバにとっては、ストレスがより大きく、Ｃ／Ｓモードの単一のゲームサーバにサポートできるプレイヤーの数がしばしば数千人で、サポート能力が比較的低い一方、弾幕地獄ゲームにとっては、弾幕が複雑で、ユニットが多く、演算量がもっと大きくなる。
【００２８】
（２）解決策１では、ユニットごとの移動、スキル、落下などの各種ゲームイベントを同期させる必要があるため、より高いネットワークトラフィックが発生している。特に、モバイルゲームにとっては、ゲームがモバイルネットワークでプレイされることが多いので、プレイヤーにとってはトラフィック消費のコストが比較的高くなる一方、弾幕地獄ゲームにとっては、弾幕が複雑で、敵ＡＩのユニットが多く、同期する必要があるデータ量が膨大になる。
【００２９】
（３）解決策１では、プレイヤーの操作入力は、まずサーバに送信して演算されるため、一定の遅延があり、これは、精確に操作しなければならない弾幕地獄ゲームにとっては許容できないものである。
【００３０】
上記の解決策２には、以下の技術的課題がある。
【００３１】
（１）解決策２では、ゲームアルゴリズムの設計要求が高い。
【００３２】
（２）解決策２では、操作の遅延が大きく、これは、精確に操作しなければならない弾幕地獄ゲームにとっては許容できないものである。
【００３３】
上記の技術的課題を解決するために、本願は、解決策３も提供し、弾幕地獄ゲームについて、直接にクライアントのローカルでゲーム操作に応じてゲーム表示を行う。インターネットに基づく弾幕地獄ゲームについて、現在、同画面でリアルタイムで戦闘を行うゲームプレイ方法の先例がない。本願は、多くの革新的な設計を採用し、このようなゲームプレイ方法を満たす表示同期の解決策を作り出す。本願の実施例によれば、ゲームコンテンツの同期表示方法の方法実施例が提供されている。
【００３４】
本実施例では、上記のゲームコンテンツの同期表示方法は、図１に示すようなサーバ１０２と端末１０４によって構成されるハードウェア環境に適用することができる。図１に示すように、サーバ１０２は、ネットワークを介して端末１０４と接続しており、上記ネットワークには、広域ネットワーク、メトロポリタンエリアネットワークまたはローカルエリアネットワークが含まれるが、これらに限定されていない。端末１０４は、ＰＣ、携帯電話、タブレットコンピュータなどに限定されていない。本願の実施例におけるゲームコンテンツの同期表示方法は、サーバ１０２と端末１０４とによって共同で実行されてもよい。ここで、端末１０４は、本願の実施例におけるゲームコンテンツの同期表示方法を実行する場合、該端末１０４にインストールされたクライアントによって実行されてもよい。以下、図２を参照しながら詳しく説明する。
【００３５】
図２は、本願の一実施例によるゲームコンテンツの同期表示方法のフローチャートであり、図２に示すように、該方法は、以下のステップを含む。
【００３６】
ステップＳ２０２で、ゲームアプリケーションの第１クライアントでゲームアプリケーションのワンラウンドのゲームを実行する場合、第１クライアントで第１操作命令を検出し、ここで、第１クライアントが第１アカウントでログインし、ワンラウンドのゲームに参加するアカウントに第１アカウントと第２アカウントが含まれ、第２アカウントがゲームアプリケーションの第２クライアントをログインするために使用するものである。
【００３７】
上記のゲームアプリケーションは、弾幕地獄ゲーム、アドベンチャーゲーム、シミュレーションゲーム、ロールプレイングゲーム、カジュアルゲームやほかのゲームであってよい。異なるタイプのゲームについては、本願で提供される方法によって実現される場合、基本的に同じように実現され、後続は弾幕地獄ゲームを例にして説明する。
【００３８】
第１クライアントは、ゲームアプリケーションのインストールパッケージが第１端末にインストールされて形成されたゲームクライアントであり、上記の第１操作命令は、第１操作者が第１端末での操作（キー操作、タッチ操作、ジェスチャー操作など）によって生成される命令である。
【００３９】
第１アカウントと第２アカウントは、ゲームアプリケーションで使用できるゲームアカウントであり、例えば、ゲームアプリケーションで申請されたアカウント、インスタント通信アカウント、Ｗｅｉｂｏ（登録商標）アカウント、ソーシャルネットワーキングアカウントなどである。第１アカウントは、第１操作者が第１クライアントで使用するアカウントであり、第２アカウントは、第２操作者が第２クライアントで使用するアカウントであり、第１操作者と第２操作者は、同時に同一ラウンドのゲームに参加するゲーム参加者であり、第１操作者は、第１端末のローカルでのゲーム参加者を指し、第２操作者は、通常、第１操作者以外のゲーム参加者を指し、第２操作者の数は、１つまたは複数である。
【００４０】
第２操作者の第２端末には、第２クライアントがインストールされ、第２クライアントには、上記のワンラウンドのゲームが同期的に実行される。
【００４１】
ステップＳ２０４で、第１操作命令に応答して、第１アカウントのワンラウンドのゲームにおける第１操作対象が第１操作を実行するように制御される。
【００４２】
上記のステップＳ２０４を実行する場合、前記第１操作命令に従って、前記ワンラウンドのゲームにおいて前記第１アカウントに対応する第１操作対象が実行する、前記第１操作命令に対応する第１操作を決定する。
【００４３】
上記の第１操作対象は、ゲームアプリケーションのプレイヤーキャラクター（Ｐｌａｙｅｒ  Ｃｈａｒａｃｔｅｒ）であり、プレイヤーキャラクターとは、ロールプレイングゲームでプレイヤーによって制御されるキャラクターを指し、ほとんどのプレイヤーキャラクターは、ゲームのストーリーのキーまたは主人公である。
【００４４】
上記の第１操作命令とは、例えば、タッチスクリーンでの左右スライド操作によって生成される命令のように、第１端末での操作によって生成される命令であり、「左右スライド」は、第１操作対象が左右移動（すなわち、第１操作）を実行することを指示し、第１操作命令に応答する場合、第１操作対象が左右移動の操作を実行するように制御される。
【００４５】
ステップＳ２０６で、第１クライアントローカルで、第１操作を実行する時に第１クライアントに表示する必要がある第１コンテンツを取得し、第１コンテンツと同時に表示する必要がある第２コンテンツを取得し、第２コンテンツは、第２アカウントのワンラウンドのゲームにおける第２操作対象が第２操作を実行する際に第２クライアントに表示する必要があるコンテンツである。ここで、第１コンテンツを取得する際に、前記第１操作対象が前記第１操作を実行する際に前記第１クライアントに表示する必要がある第１コンテンツを決定する。
【００４６】
第１クライアントに表示されるゲーム画面は、主に、３つの部分に分けられ、１つは、ゲームシーンに関するコンテンツであり、これらのコンテンツは、操作者の操作に影響されず、２つめは、第１操作者（即ち、第１アカウント）の操作に関するコンテンツ（即ち、第１コンテンツ）であり、第１コンテンツは、第１操作者の操作に伴って変化し、３つめは、第２操作者（即ち、第２アカウント）の操作に関するコンテンツ（即ち、第２コンテンツ）であり、第２コンテンツは、第２操作者の操作に伴って変化する。ここで、第１コンテンツは第１操作に対応し、第２コンテンツは第２操作に対応し、第１コンテンツと第２コンテンツとが同時に展示されることは、第１操作と第２操作とが時間で重なることを意味する。
【００４７】
上記の第１コンテンツと第２コンテンツは、操作者のゲームでの操作によって引き起こされる様々な変化のコンテンツを指すだけであり、第１コンテンツと第２コンテンツの自体には、これらの変化のコンテンツに対して使用されるレンダリングまたは表示方式が含まれていない。ここで、前記第１コンテンツには、前記第１操作対象の前記ワンラウンドのゲームにおける属性情報、例えば、位置情報、ヒットされたかどうかの情報、ヒットされた後の効果情報などが含まれている。ここで、端末デバイスでの第１クライアントは、第１操作に関する属性変化情報を他の端末デバイスでの第２クライアントに送信し、他の端末デバイスでの第２クライアントは、前記属性変化情報により前記第１コンテンツを決定する。ここで、前記属性変化情報には、移動方向、移動距離などが含まれてもよい。相応的に、前記第２コンテンツには、前記第２操作対象の前記ワンラウンドのゲームにおける属性情報、例えば位置情報、ヒットされたかどうかの情報、ヒットされた後の効果情報などが含まれている。
【００４８】
第１クライアントのローカルで第１コンテンツを取得することは、第１端末が第１操作命令に基づいて、第１操作対象が実行する必要がある第１操作を決定し、ゲーム画面フレームを単位として、第１操作を実行する過程のゲーム画面フレームごとに表示する必要がある第１コンテンツを演算する、ということを意味する。
【００４９】
例えば、移動操作について、第１操作対象の移動中に、第１端末は、ゲーム画面フレームごとに第１操作対象の所在位置および第１操作対象の外部動作形態などを演算する。
【００５０】
また、例えば、射撃操作について、第１操作対象の射撃中に、第１端末は、ゲーム画面フレームごとに各弾丸の所在位置、弾丸の効果レンダリング、ゲームＡＩにヒットするかどうか、ヒットされたゲームＡＩの効果などを演算する。
【００５１】
上記の第１コンテンツの取得方式については、第１端末のローカルで演算を行う理由は、未来に射撃ゲームのテンポが速く、弾幕が複雑で、敵ＡＩユニットが多いという特徴を満たすからである。サーバで演算を行うと、第１端末のローカルでの操作に関する情報をサーバに伝送し、サーバによって計算し（すべての端末の表示コンテンツはサーバによって計算されると、サーバの演算負荷が非常に大きくなり、演算効率も低くなる）、そして、サーバによって配信された表示コンテンツを受信する必要があるため、伝送中にかかる時間のコスト、サーバの演算時間のコストが高くなり、大きな表示遅延がある。しかしながら、射撃ゲームは、表示のインスタント性に対する要求が高いため、表示を行う必要がある第１コンテンツを第１端末のローカルで演算することを採用すれば、ちょうど上記の問題を解決することができる。
【００５２】
第１コンテンツと同時に表示する必要がある第２コンテンツを取得する場合、同期サーバまたは第２端末から取得されることができ、多少の遅延があるが、ローカルの第１端末の第１操作者に大きな影響を与えることはなく、同時に、第１操作者は、仲間（第２操作者）の関連するゲーム状況を見ることができ、第２操作者と協力してゲームをするのに便利である。
【００５３】
第１コンテンツと同時に表示する必要がある第２コンテンツを取得する場合、第１コンテンツの取得方式を採用することができ、このようにして、各端末でのゲーム画面コンテンツの一致性が保証され、ゲーム参加者のゲーム体験を向上させることができる。
【００５４】
ステップＳ２０８で、第１クライアントに、第１コンテンツと第２コンテンツを同時に表示する。
【００５５】
上記ステップＳ２０２〜ステップＳ２０８により、ゲームアプリケーションの第１クライアントがゲームアプリケーションのワンラウンドのゲームを実行する場合、第１クライアントで第１操作命令を検出し、第１アカウントのワンラウンドのゲームにおける第１操作対象が第１操作を実行するように制御され、第１クライアントのローカルで、第１操作を実行する際に第１クライアントに表示する必要がある第１コンテンツを取得し、第１コンテンツと同時に表示する必要がある第２コンテンツを取得して、ワンラウンドのゲームにおける第１アカウントの第１コンテンツと第２アカウントの第２コンテンツを第１クライアントに同時に表示させる。これによって、関連技術には同一ラウンドのゲームにおける他の操作者のゲームコンテンツをローカルで表示できない技術的課題が解決され、さらに、ゲームコンテンツの同期表示の技術的効果が達成されることができる。
【００５６】
この同期表示の解決策の特徴は、移動や弾幕のヒットなどをローカルで計算することにより、リードユニットでの操作手触りがスタンドアロンゲームと類似するということが満足され、チームメイトの移動操作、ヒット効果などがサーバによりローカルへ同期してアナログ表示されることができる、ということである。通信メッセージに対する分割、結合、圧縮など一連の手段によって、トラフィックを制御する。また、マルチチャネル通信を採用することで、同期メッセージが低遅延と信頼性との両方を備えているということが保証される。同時に、コンセンサスアルゴリズムにより、両方のクライアントのレベル、ＡＩ対象の行為、落下などが完全に一致するということが保証される。これによって、インターネットの異なるポイントに位置するプレイヤーは、ダブルプレイヤーモードで弾幕地獄ゲームをプレイする場合、スタンドアロンゲームのようなスムーズさを兼ね備えていて、チームメイトと一緒に戦う楽しさも体験することができる。
【００５７】
以下、図２と図５を参照しながら説明する。
【００５８】
本願のゲームアーキテクチャは、図５に示すように、クライアントは、ＴＣＰ方式でそれぞれ自分のゲームサーバに接続してゲームを行い、ダブルプレイヤーモード（すなわち、オンラインゲームモード）では、サーバマッチメイキング（サーバインタラクション）（または友達を誘うなど）を介してチームメイトを見つける。ゲームサーバは、このラウンドのダブルプレイヤーゲームに同期サーバとゲームルームを割り当て、両方のクライアントは、ＵＤＰ方式で同時にこの同期サーバに接続してゲームを行い、ゲームロジックが主にクライアントで実行され、同期メッセージがほとんど同期サーバにより伝送されるが、その中のいくつかの重要なメッセージ（例えば復活ための控除金など）がＴＣＰ接続されたゲームサーバを介して処理して中継され、データベースＤＢに保存される。ゲームが終了する場合、両方は、ゲームサーバに結果を報告し、ゲームサーバは、このラウンドのゲームに対して最終的な決済を行う。
【００５９】
ステップＳ２０２で提供された技術的解決策では、ゲームアプリケーションの第１クライアントがゲームアプリケーションのワンラウンドのゲームを実行する場合、第１クライアントで第１操作命令を検出する。
【００６０】
ゲームアプリケーションの第１クライアントがゲームアプリケーションのワンラウンドのゲームを実行する場合、第１クライアントでゲームサーバによって配信された指示情報を受信すると、指示情報の指示に従って第１クライアントでワンラウンドのゲームを実行し、同様に、第２クライアントにとって、受信した指示情報に従って第２クライアントで同じラウンドのゲームを実行する。
【００６１】
上記の指示情報は、第１クライアントと第２クライアントとに同じタイミングでワンラウンドのゲームを実行するように指示するために使用するものであり、この指示情報は、さらに第１クライアントと第２クライアントに同じタイミングでノンプレイヤーコントロールオブジェクトに関連するイベントを実行するように指示するために使用するものである。
【００６２】
第１操作者が第１端末でゲーム操作を行う場合、第１端末は、検出されたゲーム操作の信号に基づいて第１操作命令を生成し、第１クライアントに送信する。
【００６３】
同様に、第２クライアントにとって、第２操作者が第２端末でゲーム操作を行う場合、第２端末は、検出されたゲーム操作の信号に基づいて第２操作命令を生成し、第２クライアントに送信する。
【００６４】
ゲームアプリケーションでは、第１操作と第２操作に関する属性変化情報は、第１クライアントと第２クライアントによって同期サーバを介してインタラクティブされ、具体的に、同期サーバに接続されたＵＤＰチャネルを介して伝送される。
【００６５】
ステップＳ２０４で提供された技術的解決策では、第１操作命令に応答して、第１アカウントのワンラウンドのゲームにおける第１操作対象が第１操作を実行するように制御される。
【００６６】
第１操作の実行中に、第１端末は、第１クライアントで第１操作の開始から第１操作の終了までのゲーム画面のレンダリング表示を行う必要がある。
【００６７】
上記の第１操作は、論理フレームを単位として、若干のサブ操作に分けられ、各サブ操作に対応して、第１操作対象またはゲーム中に第１操作に関連する対象は、いずれも１つの状態があり、この状態が属性で記述されてもよく、そうすると、２つの隣接する論理フレームのサブ操作の間の状態の違いは、属性変化情報で記述されてもよい。
【００６８】
例えば、第１操作対象が移動操作を行う場合、第１論理フレームで、第１操作対象の現在位置と前の論理フレームの位置との間の位置属性変化量を記述するための属性変化情報を、第２端末での第２クライアントに送信する。
【００６９】
具体的に、第１クライアントは、上記の位置属性変化量をローカルで演算し、データ伝送チャネルで第２属性変化情報（位置属性変化情報を含む）を同期サーバに伝送し、同期サーバによって第２属性変化情報を第２クライアントに転送し、第２属性変化情報は、第１操作対象の位置属性の変化および／または射撃操作に関する属性の変化を記述するための情報である。
【００７０】
同様に、第２クライアントも、位置属性変化量をローカルで演算し、データ伝送チャネルで第１属性変化情報（算出された位置属性変化情報を含む）を同期サーバに伝送し、同期サーバによって第１属性変化情報を第１クライアントに転送し、第１属性変化情報は、第２操作対象の位置属性の変化および／または射撃操作に関する属性の変化を記述するための情報である。
【００７１】
ステップＳ２０６で提供された技術的解決策では、第１クライアントのローカルで、第１操作を実行する際に第１クライアントに表示する必要がある第１コンテンツを取得し、第１コンテンツと同時に表示する必要がある第２コンテンツを取得し、第２コンテンツは、第２アカウントのワンラウンドのゲームにおける第２操作対象が第２操作を実行する際に第２クライアントに表示する必要があるコンテンツである。
【００７２】
（１）第１コンテンツの取得について
第１クライアントローカルで、第１操作を実行する際に第１クライアントに表示する必要がある第１コンテンツを取得することは、第１操作が第１操作対象の位置属性を変更する操作である場合、第１操作対象の位置属性の変更後における所在位置を示すための第１コンテンツを第１クライアントのローカルで決定することと、第１操作が第１操作対象の射撃操作である場合、射撃に関するものであることを示す第１コンテンツを第１クライアントのローカルで決定することとのうちの少なくとも１つを含む。
【００７３】
例えば、第１操作対象の移動操作について、第１端末のローカルで、予め設定された論理フレーム間の時間間隔及び予め設定された対象移動速度に基づいて、第１操作者の操作方向も考慮して、第１操作対象の各論理フレームにおいて達成可能な移動距離、及び移動後の所在位置を決定し、第１コンテンツには、少なくとも、移動後の第１操作対象の所在位置を表すコンテンツが含まれる。
【００７４】
また、射撃操作について、第１端末のローカルで、予め設定された論理フレーム間の時間間隔及び予め設定された弾丸移動速度に基づいて、第１操作者の操作方向も考慮して、弾丸の各論理フレームにおいて達成可能な移動距離、及び移動後の所在位置を決定し、第１コンテンツには、少なくとも、移動後の弾丸の所在位置を示すコンテンツが含まれ、また、ＡＩがヒットされたかどうか、ヒットされた後の効果に関するコンテンツも含まれている。
【００７５】
（２）第２コンテンツの取得について
上記の内容では、第２クライアントが第１属性変化情報をどのように送信するかについては説明された。第１クライアントが、第１コンテンツと同時に表示する必要がある第２コンテンツを取得する際に、第２クライアントが同期サーバを介して転送する第１属性変化情報をデータ伝送チャネルで受信し、第１属性変化情報が、ワンラウンドのゲームにおいて第２操作対象が第２操作を実行することによる属性の変化を記述するための情報であり、第２操作が、第２クライアントで検出された第２操作命令によってトリガされる操作であり、第１クライアントのローカルで、第１属性変化情報に基づいて第２コンテンツを決定する。
【００７６】
例えば、第２操作対象の移動操作について、前の時刻の所在位置、及び第１属性変化情報に基づいて、第２操作対象の現在時刻の位置を決定でき、第１属性変化情報は、第２操作対象の移動方向、移動の単位距離の数を含むようにしてよい。
【００７７】
ステップＳ２０８で提供される技術的解決策では、第１クライアントに第１コンテンツと第２コンテンツを同時に表示し、第１端末は、第１属性変化情報に基づいて決定された第２コンテンツを第１クライアントのゲーム画面に重ねて表示し、第１クライアントのゲーム画面が第１コンテンツを表示する画面である。
【００７８】
第１操作対象と第２操作対象のゲーム行為を便利に区別するために、第１属性変化情報に基づいて決定された第２コンテンツを第１クライアントのゲーム画面に重ねて表示するとき、第１コンテンツを第１クライアントのゲーム画面に第１表示方式で表示しながら、第２コンテンツを第１クライアントのゲーム画面に第２表示方式で重ねて表示し、第１表示方式と第２表示方式が異なる。
【００７９】
図６に示すように、左側は、第１クライアントのゲーム画面であり、右側は、第２クライアントのゲーム画面であり、リードユニット（第１クライアントでの第１操作対象、または第２クライアントでの第２操作対象）は、通常の表示方式を採用し、友達ユニット（第１クライアントでの第２操作対象、または第２クライアントでの第１操作対象）は、半透明（図６に点線で表示される）の方式で表示する。
【００８０】
（３）オフラインした後に再びゲームに参加する方法について
ゲームアプリケーションの第１クライアントがゲームアプリケーションのワンラウンドのゲームを実行した後、第１クライアントがオフラインした場合、第１クライアントが再びオンラインすると、第２クライアントからワンラウンドのゲームの現在の進捗時間を取得し、ワンラウンドのゲームにおける複数の基準時間マークから、現在の進捗時間に隣接して、かつ到来した目標基準時間マークを決定し、ここで、基準時間マークは、ワンラウンドのゲームにおける進捗時間を予めマーキングした時刻である。第１クライアントでワンラウンドのゲームをリロードし、リロードされたワンラウンドのゲームのゲーム画面を第１画面から第２画面に更新し、ここで、第１画面は、ワンラウンドのゲームの目標基準時間マークにおけるゲーム画面であり、第２画面は、ワンラウンドのゲームの現在の進捗時間におけるゲーム画面である。
【００８１】
上記のオフラインの原因は、例えば、クライアントが異常によってクローズされ、ユーザがクライアントをオフし、ユーザがゲームから退出し、ネットワークが切断されるなど、様々である。
【００８２】
第１クライアントがオフラインし、再びオンラインする場合、第２クライアントから現在の進捗時間を取得し、そして、進捗時間に基づいて基準時間マーク（即ち、目標基準時間マーク）を算出し、この時間マークは、現在の進捗時間より前となる。ここで、最も近い目標基準時間マークに対する現在の時間マークの差分値を決定し、この差分値と、前記目標基準時間マークの属性情報とに基づいて、前記現在の時間マークの属性情報を決定する。第１クライアントは、この基準マークから高速演算を開始し、第２クライアントの現在の進捗時間に追いつき、この演算過程が通常のゲーム速度の５０〜１００倍（具体的にクライアント性能に依存）である。このプロセスは、オフライン再接続ロジック内に含まれており、このオフライン再接続プロセスが完了する場合、第１クライアントと第２クライアントは同じ時間マークにあり、ゲーム画面の表示を開始し、通常のゲームプロセスに進む。
【００８３】
図７に示すように、本願は、マルチ時間マークのランダム基準分離の方式により、ゲームを任意の基準時間マーク（例えば、マーク１とマーク２）から計算することができる。
【００８４】
ゲームを開始する時、サーバによって配信された情報（例えば、起動乱数）に基づいて、ゲーム進捗の開始時刻を決定し、各時間マークのランダム基準は、ゲーム開始時のランダム基準から計算される。マーク１からランダムレベルと乱数基準を生成し、ローカルリソースを利用してレベルシーン（例えば、モンスター１からモンスターＮまで）を生成する。あるクライアント（例えば、第１クライアント）がオフラインして再接続される場合、このクライアントは、チームメイト（第２クライアント）からこの時点でのゲームの進捗時間を取得し、その時間から最近のランダム基準時間値（マーク２）を推定し、この時間基準から、現在のゲーム時間まで後方へゲームの状況（例えば、チームメイトの位置）を計算し、その後、正常速度のゲームを開始する（即ち、ゲームを再開する、追跡弾でＡＩを攻撃する、死亡アイテムを落下するなど）。基準時間マークの間には合理的な長さがあるべきであり、長すぎてはいけなく、短い必要もない。
【００８５】
例えば、飛行機大戦のゲームでは、ワンラウンドのダブルプレイヤーゲームは、２０個ぐらいのレベルに分けられ、各レベルは約２分で、この時間間隔で定義された時間マークは合理的であり、ゲームがオフラインされた後に再接続されるたびに、現在の小レベルから後方へ計算し、約１秒以内に現在の小レベルの任意の時点まで計算でき、プレイヤーは、オフラインの影響がほとんど感知されない。
【００８６】
説明すべきものとして、各クライアントにおいて、ゲームでの対象が一致するように表現されるべきであり、表現一致性とは、同じラウンドのゲーム内の複数のプレイヤークライアントでの表現が一致する必要があるということを意味する。これは、同じレベルシーケンス、同じレベルシーン、同じ時間に同じＮＰＣに更新されることを含む。同一のＮＰＣは同じＡＩ表現を持ち、同一のＮＰＣが死亡した後に同じ落下アイテムが生じるなどである。
【００８７】
ランダムレベルと乱数基準を生成する前に、ゲームサーバによりゲーム開始時に同じ開始乱数を各クライアントに配信し、各クライアントは、同じ擬似乱数再帰アルゴリズム（例えば、ＬＣＧ擬似乱数アルゴリズムを採用し、他の類似のアルゴリズムにも変更可能）により、この乱数からゲーム内の各モジュールの実行に必要な乱数（即ち、乱数基準マーク）を生成する。各モジュール間の干渉を避けるために、各モジュールは、初期のランダム値から変換された値を基準として使用する。
【００８８】
クライアントでの同じアルゴリズム、および同じ初期入力乱数により、ゲーム内の各クライアントの表現が一致性の要求を満たすようして、オフラインしても依然として再開でき、ゲームの一致性が確保される。
【００８９】
（４）クライアント間の通信について
ゲームアプリケーションの第１クライアントがゲームアプリケーションのワンラウンドのゲームを実行する場合、第１クライアントで第２クライアントに送信するメッセージセットについて、以下の処理、即ち、メッセージセットのうちの第１メッセージを前処理すること、を実行してから送信し、ここで、前処理は、メッセージセットのうちの同じタイプの複数の第１メッセージを、同じタイプの複数の第１メッセージを表す１つの第２メッセージに置き換えることと、前処理されたメッセージセットのうちのすべてのメッセージを１つのメッセージパケットにパッケージ化することと、メッセージパケットを圧縮処理することと、を含む。
【００９０】
ここで、データ伝送チャネルで第２属性変化情報を同期サーバに送信する前に、前記方法は、前記属性変化情報を送信する第１メッセージを前処理することをさらに含み、ここで、前記前処理は、同じタイプの複数の前記第１メッセージを、同じタイプの複数の前記第１メッセージを表す１つの第２メッセージに生成することと、すべての第２メッセージを１つのメッセージパケットにパッケージ化することと、前記メッセージパケットを圧縮処理することと、を含む。
【００９１】
図５及び図８に示すように、本願は、ＴＣＰとＵＤＰの二重接続の通信方式を採用し、ここでは、ＴＣＰチャネルは、ゲームの制御情報（主にクライアントとゲームサーバとの間で伝送される）を伝送し、レベルの進捗及びいくつかの重要なメッセージ、例えば、ゲームの開始終了、戦闘結果（ダブルプレイヤーモードの決済、不正防止判定）の報告、戦闘中に復活ための控除金など、を報告する。これらのメッセージは、ゲームサーバによって実行する必要があるゲーム状態の変更やプレイヤーリソースの消費などに関するものである。例えば、ゲームを開始する場合、ゲームサーバは、クライアントに同期サーバを割り当て、ＴＣＰチャネルを介して監視を行い、ダブルプレイヤーのバトルを生成し、ダブルプレイヤーの二次マッチングを行い、最後に、グローバルサーバによってダブルプレイヤーのグローバルマッチングを行い、ゲームでの進捗情報などが、ＴＣＰチャネルを介して他のゲームサーバに送信される。
【００９２】
図８のＴＧＷは、Ｔｅｎｃｅｎｔ  Ｇａｔｅｗａｙの略語であり、マルチネットワークの統一アクセス、外部ネットワークの要求転送、自動負荷バランスをサポートするシステムである。
【００９３】
ＵＤＰチャネルは、クライアントと同期サーバとの接続であり、同期サーバは、ＵＤＰ方式の高速低遅延メッセージ転送サービスを提供する。ＵＤＰチャネルにおけるメッセージは２つに分かれ、１つは非信頼性の伝送方式であり、例えば、位置同期、ヘルスパワー同期、スキル表現、アイテム表現などの同期メッセージであり、これらのメッセージが、このような同期メッセージの主要な構成部分であり、それらの共通の特徴が、途中で紛失された後、後続のメッセージに置き換えられるため、再送信する必要がなく、高速転送のみを行うことである。これにより、このようなメッセージは、相手のクライアントに、より迅速に到達することができ、また、紛失や再送信などの操作によるネットワークの詰まりが生じないことが保証される。また、少ないメッセージ（例えば、ルームの開始、終了、進捗保存、キーイベントの共同調停など）が相手のクライアントに正確に伝送されることが保証され、これらのメッセージは、信頼できるＵＤＰによって伝送され、信頼できるＵＤＰの伝送は、主に、メッセージのシーケンス番号と受信者応答の方式によって実現され、また、同期サーバでデータメッセージのキャッシュを行い、これにより、ダブルプレイヤールームの管理が実現されることができる。
【００９４】
説明すべきものとして、上記のＴＣＰとＵＤＰを介してメッセージを伝送する場合には、メッセージを処理する必要があり、同期メッセージの分割、結合、複数のパケットの組み合わせ、パケット圧縮などによって、メッセージのトラフィックをさらに低減させることができる。
【００９５】
メッセージは論理フレームで伝送され、１秒あたりの論理フレームの数は１０〜１４フレーム程度である。同じフレームにおいて、複数の関連イベントが相次いで発生した場合、メッセージの分割と結合を適用することができる。
【００９６】
メッセージ分割とは、同じ対象のメッセージについて、もし後のものが前のものに代わることができるなら、前のものが破棄することができ、例えば同じフレーム内のリードユニットのモバイルメッセージについて、最後の座標位置のみが送信されればよく、同じゲーム対象のＨＰ（ｈｅａｌｔｈ  ｐｏｗｅｒ、ヘルスパワー）を差し引いて死亡すると、直接死亡メッセージが送信されればよい、ということを意味する。
【００９７】
メッセージの結合とは、同じ対象のメッセージについて、前後に重畳された関係があれば、複数のメッセージが１つに結合されてもよく、同じフレーム内のゲーム対象が何度もＨＰを控除するメッセージが発生した場合、この複数回を１回にまとめてＨＰの控除量が積算されればよい、ということを意味する。
【００９８】
複数のパケットの組み合わせとは、同じフレーム内で発生された複数の異なるイベントを、より大きなパケットに組み合わせて伝送する、ということを意味し、複数の小さなパケットの伝送よりも単一の大きなパケットの伝送が優れている。
【００９９】
パケット圧縮は、伝送する各パケットをアルゴリズム的に圧縮し、パケットのサイズをさらに低減し、トラフィックを節約することができる。
【０１００】
以上の処理を経て、航空機大戦のダブルプレイヤーゲームでは、各クライアントのトラフィックを約１ＫＢ／ｓまで制御することができ、そうすると、２Ｇネットワークでも、ダブルプレイヤーゲームを正常に行うことができる。
【０１０１】
本願の上記解決策３は、解決策１と比較して、次のような区別を備えている。
【０１０２】
（１）解決策１では、ゲームロジックがサーバで実行され、サーバにとっては、ストレスがより大きく、Ｃ／Ｓモードの単一のゲームサーバにサポートできるプレイヤーの数がしばしば数千人で、サポート能力が比較的低い一方、弾幕地獄ゲームにとっては、弾幕が複雑で、ユニットが多く、演算量はもっと大きくなる。そのため、解決策３では、ゲームロジックをローカルクライアントで実行させ、これによって、ゲームサーバの負荷を低減させることができる。
【０１０３】
（２）解決策１では、ユニットごとの移動、スキル、落下などの各種ゲームイベントを同期させる必要があるため、より高いネットワークトラフィックが発生している。特に、モバイルゲームにとっては、ゲームがモバイルネットワークでプレイされることが多いので、プレイヤーにとってはトラフィック消費のコストが比較的高くなる一方、弾幕地獄ゲームにとっては、弾幕が複雑で、敵ＡＩのユニットが多く、同期する必要があるデータ量は膨大になる。解決策３のメッセージ伝送方法を採用すれば、トラフィック消費を低減することができる。
【０１０４】
（３）解決策１では、プレイヤーの操作入力は、まずサーバに送信して演算されるため、一定の遅延があり、これは、精確に操作しなければならない弾幕地獄ゲームにとっては許容できないものである。解決策３では、ローカルで直接にゲーム応答を行うことで、遅延問題が回避されることができる。
【０１０５】
本願の上記解決策３は、解決策２と比較して、次のような区別を備えている。
【０１０６】
（１）解決策２では、ゲームアルゴリズムの設計要求が高い。解決策３では、比較的低い。
【０１０７】
（２）解決策２では、操作の遅延が大きく、これは、精確に操作しなければならない弾幕地獄ゲームにとっては許容できないものである。解決策３では、ローカルで直接にゲーム応答を行うことで、遅延問題が回避されることができる。上記の分析から分かるように、本願の解決策３は、以下のような利点を備えている。
【０１０８】
（１）ゲームアルゴリズムロジックがクライアントで実行され、一致性アルゴリズムによって各クライアントのゲーム一致性が保証され、同時に、サーバの高負荷性能が維持される。
【０１０９】
（２）弾幕地獄ゲームの操作手触りに対する高い要求について、リードユニットの操作を現在のクライアントでリアルタイムに演算することにより、スタンドアロンゲームのような操作体験が提供されている。
【０１１０】
（３）モバイルネットワークでのネットワーク接続が不安定で、トラフィックコストが高い場合について、それに適したマルチチャネル同期通信方式を設計し、メッセージが可能な限り低遅延であることが保証され、同時に、一部のメッセージの信頼性要件も考慮しながら、トラフィックの最適化が行われた。
【０１１１】
一実施例として、以下、飛行機大戦を例にして説明する。
【０１１２】
図６に示すように、飛行機大戦のモバイルゲームのダブルプレイヤーゲームプレーが示されており、図６にリードユニット（実線部分の飛行機）として示されるのは、このクライアントのプレイヤーが操作する飛行機（すなわち、第１操作対象）であり、リードユニットやリードユニットが発射する弾幕、リードユニットが携帯するペット、ペットが発射する弾幕は、いずれも、リードユニットの所在のクライアントによってリアルタイムに計算して効果が生成され、リアルタイムにゲームのインターフェースで表示される。したがって、この場合、プレイヤーにとっては、スタンドアロンゲームバージョンのゲームと変わりなく、敵機の弾幕を回避するために戦闘機を高速移動したり、飛んできた敵機を精確に撃ったりするなどができ、少しの遅延もない。
【０１１３】
図６に示す友達ユニット（破線部分の飛行機）は、ネットワークを介して同期表示される友達プレイヤーが操作する戦闘機であり、リードユニットに視覚的な干渉を与えないように、友達ユニットが発射する弾幕や友達ユニットが携帯するペットは、いずれも、半透明で表示され、リードユニットプレイヤーはそれを操作できないが、ゲーム画面を通して友達から敵のユニットへの攻撃効果を感じることができ、互いに楽しく協力するゲーム体験が生み出される。
【０１１４】
敵のユニット、敵のユニットが発射する弾幕、および各種の落下などについて、クライアントのアルゴリズムの設計を通じてクライアントの間に高度の一致性が維持される。この部分のコンテンツは、両方のクライアント間で同期して伝送されなくてもよい。
【０１１５】
本願の実施例では、クライアントレベルの一致性アルゴリズムとリードユニットローカライズ操作やヒット計算とを組み合わせて、表現効果をチームメイトクライアントに同期させる方式により、弾幕地獄ゲームのような制御要求が高く、ゲーム対象が多く、ゲームロジックの演算が複雑である、ネットワークに基づく同画面リアルタイムゲームプロセスの解決策が実現され、パフォーマンスとトラフィックを両立する前提で、よりよいプレイヤー体験を実現した。
【０１１６】
本願は、シューティングゲームのみを一例として説明するが、他のタイプのゲームについて、ゲーム間の表示同期を保証し、ネットワークに対する要求を低減するために、本願の実施例に係る技術的解決策を用いて実現することもでき、具体的な実施方式はシューティングゲームの実現方式と類似して、ここでは説明されない。
【０１１７】
説明すべきものとして、前述の各方法の実施例について、簡単に説明するために、一連の動作の組み合わせとして表現されているが、本願に従って、あるステップは他の順序または同時に実施されることができるので、本願が記載された動作の順序によって制限されていないことは、当業者には理解されるべきである。次に、本明細書に記載された実施例はいずれも一部の実施例に属しており、関連する動作およびモジュールは必ずしも本願に必須ではないことは、当業者には理解されるべきである。
【０１１８】
以上の実施例の説明により、当業者は、上記の実施例による方法が、ソフトウェアと必要な汎用ハードウェアプラットフォームとを介して実現されてもよく、ハードウェアを介して実現されてもよいが、多くの場合には前者がよりよい実施方式であるということを明らかにすることができる。このような理解に基づいて、本願の技術的解決策について、本質的なものまたは既存の技術に寄与する部分が、ソフトウェア製品として具現化されることができ、このコンピュータソフトウェア製品は、記憶媒体（例えば、ＲＯＭ／ＲＡＭ、磁気ディスク、光ディスク）に記憶され、１つの端末デバイス（携帯電話、コンピュータ、サーバ、またはネットワークデバイスなど）が本願の各実施例に記載された方法を実行するようにするための若干の命令を含む。
【０１１９】
本発明の実施例によれば、上記のゲームコンテンツの同期表示方法を実施するためのゲームコンテンツの同期表示装置も提供されている。図９は、本願の一実施例によるゲームコンテンツの同期表示装置の概略図であり、図９に示すように、該装置は、検出ユニット９２と、応答ユニット９４と、第１取得ユニット９６と、表示ユニット９８とを備える。
【０１２０】
検出ユニット９２は、ゲームアプリケーションの第１クライアントで前記ゲームアプリケーションのワンラウンドのゲームを実行する場合、前記第１クライアントで第１操作命令を検出し、ここで、前記第１クライアントが第１アカウントでログインし、前記ワンラウンドのゲームに参加するアカウントに前記第１アカウントと第２アカウントが含まれ、前記第２アカウントが前記ゲームアプリケーションの第２クライアントをログインするために使用するものである。
【０１２１】
上記のゲームアプリケーションは、弾幕地獄ゲーム、アドベンチャーゲーム、シミュレーションゲーム、ロールプレイングゲーム、カジュアルゲームやほかのゲームであってよい。異なるタイプのゲームについては、本願で提供される方法によって実現される場合、基本的に同じように実現され、後続は弾幕地獄ゲームを例にして説明する。
【０１２２】
第１クライアントは、ゲームアプリケーションのインストールパッケージが第１端末にインストールされて形成されたゲームクライアントであり、上記の第１操作命令は、第１操作者が第１端末での操作（キー操作、タッチ操作、ジェスチャー操作など）によって生成される命令である。
【０１２３】
第１アカウントと第２アカウントは、ゲームアプリケーションで使用できるゲームアカウントであり、例えば、ゲームアプリケーションで申請されたアカウント、インスタント通信アカウント、Ｗｅｉｂｏ（登録商標）アカウント、ソーシャルネットワーキングアカウントなどである。第１アカウントは、第１操作者が第１クライアントで使用するアカウントであり、第２アカウントは、第２操作者が第２クライアントで使用するアカウントであり、第１操作者と第２操作者は、同時に同一ラウンドのゲームに参加するゲーム参加者であり、第１操作者は、第１端末のローカルでのゲーム参加者を指し、第２操作者は、通常、第１操作者以外のゲーム参加者を指し、第２操作者の数は、１つまたは複数である。
【０１２４】
第２操作者の第２端末には、第２クライアントがインストールされ、第２クライアントでは、上記のワンラウンドのゲームが同期的に実行される。
【０１２５】
応答ユニット９４は、前記第１操作命令に基づいて、前記ワンラウンドのゲームにおける前記第１アカウントに対応する第１操作対象が実行する、前記第１操作命令に対応する第１操作を決定する。
【０１２６】
上記の第１操作対象は、ゲームアプリケーションのプレイヤーキャラクター（Ｐｌａｙｅｒ  Ｃｈａｒａｃｔｅｒ）であり、プレイヤーキャラクターとは、ロールプレイングゲームでプレイヤーによって制御されるキャラクターを指し、ほとんどのプレイヤーキャラクターは、ゲームのストーリーのキーまたは主人公である。
【０１２７】
上記の第１操作命令とは、例えば、タッチスクリーン上の左右スライド操作によって生成される命令のように、第１端末での操作によって生成される命令であり、「左右スライド」は、第１操作対象が左右移動（すなわち、第１操作）を実行することを指示し、第１操作命令に応答する場合、第１操作対象が左右移動の操作を実行するように制御する。
【０１２８】
第１取得ユニット９６は、前記第１操作対象が前記第１操作を実行する際に前記第１クライアントに表示する必要がある第１コンテンツを決定し、前記第１コンテンツと同時に表示する必要がある第２コンテンツを取得し、前記第２コンテンツは、前記ワンラウンドのゲームにおける前記第２アカウントに対応する第２操作対象が第２操作を実行する際に前記第２クライアントに表示する必要があるコンテンツである。
【０１２９】
第１クライアントに表示されるゲーム画面は、主に、３つの部分に分けられ、１つは、ゲームシーンに関するコンテンツであり、これらのコンテンツは、操作者の操作に影響されず、２つめは、第１操作者（即ち、第１アカウント）の操作に関するコンテンツ（即ち、第１コンテンツ）であり、第１コンテンツは、第１操作者の操作に伴って変化し、３つめは、第２操作者（即ち、第２アカウント）の操作に関するコンテンツ（即ち、第２コンテンツ）であり、第２コンテンツは、第２操作者の操作に伴って変化する。
【０１３０】
上記の第１コンテンツと第２コンテンツは、操作者のゲームでの操作によって引き起こされる様々な変化のコンテンツを指すだけであり、第１コンテンツと第２コンテンツの自体には、これらの変化のコンテンツに対して使用されるレンダリングまたは表示方式が含まれてない。
【０１３１】
第１クライアントローカルで第１コンテンツを取得することは、第１端末が第１操作命令に基づいて、第１操作対象が実行する必要がある第１操作を決定し、ゲーム画面フレームを単位として、第１操作を実行する過程のゲーム画面フレームごとに表示する必要がある第１コンテンツを演算する、ということを意味する。
【０１３２】
例えば、移動操作について、第１操作対象の移動中に、第１端末は、ゲーム画面フレームごとに第１操作対象の所在位置および第１操作対象の外部動作形態などを演算する。
【０１３３】
また、例えば、射撃操作について、第１操作対象の射撃中に、第１端末は、ゲーム画面フレームごとに各弾丸の所在位置、弾丸の効果レンダリング、ゲームＡＩにヒットするかどうか、ヒットされたゲームＡＩの効果などを演算する。
【０１３４】
上記の第１コンテンツの取得方式については、第１端末のローカルで演算を行う理由は、未来に射撃ゲームのテンポが速く、弾幕が複雑で、敵ＡＩユニットが多いという特徴を満たすからである。サーバで演算を行うと、第１端末のローカルでの操作に関する情報をサーバに伝送し、サーバによって計算し（すべての端末の表示コンテンツはサーバによって計算されると、サーバの演算負荷が非常に大きくなり、演算効率も低くなる）、そして、サーバによって配信された表示コンテンツを受信する必要があるため、伝送中にかかる時間のコスト、サーバの演算時間のコストが高くなり、大きな表示遅延がある。しかしながら、射撃ゲームは、表示のインスタント性に対する要求が高いため、表示を行う必要がある第１コンテンツを第１端末のローカルで演算することを採用すれば、ちょうど上記の問題を解決することができる。
【０１３５】
第１コンテンツと同時に表示する必要がある第２コンテンツを取得する場合、同期サーバまたは第２端末から取得されることができ、多少の遅延があるが、ローカルの第１端末の第１操作者に大きな影響を与えることはなく、同時に、第１操作者は、仲間（第２操作者）の関連するゲーム状況を見ることができ、第２操作者と協力してゲームをするのに便利である。
【０１３６】
第１コンテンツと同時に表示する必要がある第２コンテンツを取得する場合、第１コンテンツの取得方式を採用することができ、このようにして、各端末でのゲーム画面コンテンツの一致性が保証され、ゲーム参加者のゲーム体験を向上させることができる。
【０１３７】
表示ユニット９８は、第１クライアントに、前記第１コンテンツと前記第２コンテンツを同時に表示する。
【０１３８】
説明すべきものとして、本実施例における検出ユニット９２は、本願のゲームコンテンツの同期表示方法におけるステップＳ２０２を実行するために使用されることができ、本実施例における応答ユニット９４は、本願のゲームコンテンツの同期表示方法におけるステップＳ２０４を実行するために使用されることができ、本実施例における第１取得ユニット９６は、本願のゲームコンテンツの同期表示方法におけるステップＳ２０６を実行するために使用されることができ、本実施例における表示ユニット９８は、本願のゲームコンテンツの同期表示方法におけるステップＳ２０８を実行するために使用されることができる。
【０１３９】
ここで、説明すべきものとして、上記のモジュールは、対応するステップによって実現される例やアプリケーションシーンと同じであるが、上記のゲームコンテンツの同期表示方法によって開示されたコンテンツに限定されない。説明すべきものとして、上記のモジュールは、装置の一部として、図１に示すハードウェア環境で動作することができ、ソフトウェアで実現されてもよく、ハードウェアで実現されてもよい。
【０１４０】
上記のモジュールによれば、ゲームアプリケーションの第１クライアントがゲームアプリケーションのワンラウンドのゲームを実行する場合、第１クライアントで第１操作命令を検出し、第１アカウントのワンラウンドのゲームにおける第１操作対象が第１操作を実行するように制御され、第１クライアントのローカルで、第１操作を実行する際に第１クライアントに表示する必要がある第１コンテンツを取得し、第１コンテンツと同時に表示する必要がある第２コンテンツを取得して、ワンラウンドのゲームにおける第１アカウントの第１コンテンツと第２アカウントの第２コンテンツを第１クライアントに同時に表示させる。これによって、関連技術では同一ラウンドのゲームにおける他の操作者のゲームコンテンツをローカルで表示できないという技術的課題が解決され、さらに、ゲームコンテンツの同期表示の技術的効果が達成されることができる。
【０１４１】
本願の検出ユニットは、ゲームアプリケーションの第１クライアントがゲームアプリケーションのワンラウンドのゲームを実行する場合、第１クライアントでゲームサーバによって配信された指示情報を受信すると、指示情報の指示に従って第１クライアントでワンラウンドのゲームを実行し、同様に、第２クライアントにとって、受信した指示情報に従って第２クライアントで同じラウンドのゲームを実行する。
【０１４２】
第１取得ユニットは、第２クライアントから送信された第１属性変化情報を取得する取得モジュールであって、ここで、第１属性変化情報が、ワンラウンドのゲームにおいて第２操作対象が第２操作を実行することによる属性の変化を記述するための情報であり、第２操作が、第２クライアントで検出された第２操作命令によってトリガされる操作である取得モジュールと、第１クライアントで、第１属性変化情報に基づいて第２コンテンツを決定する決定モジュールと、を含む。
【０１４３】
表示ユニットは、第１属性変化情報に基づいて決定された第２コンテンツを第１クライアントのゲーム画面に重ねて表示し、第１クライアントのゲーム画面が第１コンテンツを表示する画面である。該表示ユニットは、第１コンテンツを第１クライアントのゲーム画面に第１表示方式で表示しながら、第２コンテンツを第１クライアントのゲーム画面に第２表示方式で重ねて表示する表示モジュールを含み、ここで、第１表示方式と第２表示方式が異なる。
【０１４４】
上記の内容では、第２クライアントが第１属性変化情報をどのように送信するかについて説明された。第１クライアントが、第１コンテンツと同時に表示する必要がある第２コンテンツを取得する際に、第２クライアントが同期サーバを介して転送する第１属性変化情報をデータ伝送チャネルで受信し、第１属性変化情報が、ワンラウンドのゲームにおいて第２操作対象が第２操作を実行することによる属性の変化を記述するための情報であり、第２操作が、第２クライアントで検出された第２操作命令によってトリガされる操作であり、第１属性変化情報に基づいて第２コンテンツを第１クライアントのローカルで決定する。
【０１４５】
例えば、第２操作対象の移動操作について、前の時刻の所在位置、及び第１属性変化情報に基づいて、第２操作対象の現在時刻の位置を決定でき、第１属性変化情報は、第２操作対象の移動方向、移動の単位距離の数を含むようにしてよい。
【０１４６】
上記の取得モジュールは、第２クライアントが同期サーバを介して転送する第１属性変化情報をデータ伝送チャネルで受信し、ここで、データ伝送チャネルが、同期サーバに接続され、かつユーザデータグラムプロトコルを用いてデータを伝送するチャネルである。
【０１４７】
本願の第１取得ユニットにおいて、第１クライアントのローカルで、第１操作を実行する際に第１クライアントに表示する必要がある第１コンテンツを取得することは、第１操作が第１操作対象の位置属性を変更する操作である場合、第１操作対象の位置属性の変更後における所在位置を示すための第１コンテンツを第１クライアントのローカルで決定することと、第１操作が第１操作対象の射撃操作である場合、射撃に関するものであることを示す第１コンテンツを第１クライアントのローカルで決定することとのうちの少なくとも１つを含む。
【０１４８】
例えば、第１操作対象の移動操作について、第１端末のローカルで、予め設定された論理フレーム間の時間間隔及び予め設定された対象移動速度に基づいて、第１操作者の操作方向も考慮して、第１操作対象の各論理フレームにおいて達成可能な移動距離、及び移動後の所在位置を決定し、第１コンテンツには、少なくとも、移動後の第１操作対象の所在位置を表すコンテンツが含まれる。
【０１４９】
また、射撃操作について、第１端末のローカルで、予め設定された論理フレーム間の時間間隔及び予め設定された弾丸移動速度に基づいて、第１操作者の操作方向も考慮して、弾丸の各論理フレームにおいて達成可能な移動距離、及び移動後の所在位置を決定し、第１コンテンツには、少なくとも、移動後の弾丸の所在位置を示すコンテンツが含まれ、また、ＡＩがヒットされたかどうか、ヒットされた後の効果に関するコンテンツも含まれている。
【０１５０】
上記の第１取得ユニットは、第１操作を実行する際に第１クライアントに表示する必要がある第１コンテンツを第１クライアントのローカル上で取得した後、データ伝送チャネルで第２属性変化情報を同期サーバに伝送し、ここで、同期サーバは、第２クライアントに第２属性変化情報を転送し、第２属性変化情報は、位置属性の変化および／または射撃操作に関する属性の変化を記述するための情報であり、データ伝送チャネルは、同期サーバに接続され、かつユーザデータグラムプロトコルを用いてデータを伝送するチャネルである。
【０１５１】
本願の装置は、第１クライアントがオフラインした場合、第２クライアントからワンラウンドのゲームの現在の進捗時間を取得する第２取得ユニットと、ワンラウンドのゲームにおける複数の基準時間マークから、現在の進捗時間に隣接して、かつ到来した目標基準時間マークを決定する決定ユニットであって、ここで、基準時間マークは、ワンラウンドのゲームにおける進捗時間を予めマーキングした時刻である決定ユニットと、第１クライアントでワンラウンドのゲームをリロードし、リロードされたワンラウンドのゲームのゲーム画面を第１画面から第２画面に更新するロードユニットであって、ここで、第１画面は、ワンラウンドのゲームの目標基準時間マークにおけるゲーム画面であり、第２画面は、ワンラウンドのゲームの現在の進捗時間におけるゲーム画面であるロードユニットと、を含む。
【０１５２】
ゲームアプリケーションの第１クライアントがゲームアプリケーションのワンラウンドのゲームを実行する場合、本願の装置は、第２クライアントに送信するメッセージセットについて、以下の処理、即ち、メッセージセットのうちの第１メッセージを前処理すること、を実行してから送信し、ここで、前処理は、メッセージセットのうちの同じタイプの複数の第１メッセージを、同じタイプの複数の第１メッセージを表す１つの第２メッセージに置き換えることと、前処理されたメッセージセットのうちのすべてのメッセージを１つのメッセージパケットにパッケージ化することと、メッセージパケットを圧縮処理することと、を含む。
【０１５３】
本願の実施例では、クライアントレベルの一致性アルゴリズムとリードユニットローカライズ操作やヒット計算とを組み合わせて、表現効果をチームメイトクライアントに同期させる方式により、弾幕地獄ゲームのような制御要求が高く、ゲーム対象が多く、ゲームロジックの演算が複雑である、ネットワークに基づく同画面リアルタイムゲームプロセスの解決策が実現され、パフォーマンスとトラフィックを両立する前提で、よりよいプレイヤー体験を実現した。
【０１５４】
説明すべきものとして、上記のモジュールは、対応するステップによって実現される例やアプリケーションシーンと同じであるが、上記のゲームコンテンツの同期表示方法によって開示されたコンテンツに限定されない。説明すべきものとして、上記のモジュールは、装置の一部として、図１に示すハードウェア環境で動作することができ、ソフトウェアで実現されてもよく、ハードウェアで実現されてもよい。ここで、ハードウェア環境には、ネットワーク環境が含まれている。
【０１５５】
本願の実施例によれば、上記のゲームコンテンツの同期表示方法を実施するためのサーバまたは端末（即ち、電子装置）も提供されている。
【０１５６】
図１０は、本願の一実施例による端末の構成ブロック図であり、図１０に示すように、前記端末は、１つまたは複数（図には１つのみを示す）のプロセッサ１００１と、メモリ１００３と、伝送装置１００５（例えば、上記の実施例の送信装置）と、を備え、図１０に示すように、該端末は、入出力装置１００７をさらに備えるようにしてよい。
【０１５７】
ここで、メモリ１００３は、本願の実施例に係るゲームコンテンツの同期表示方法および装置に対応するプログラム命令／モジュールのようなソフトウェアプログラムおよびモジュールを記憶するために使用される。プロセッサ１００１は、メモリ１００３に記憶されたソフトウェアプログラムおよびモジュールを実行することにより、様々な機能アプリケーションおよびデータ処理を実行し、即ち、上記のゲームコンテンツの同期表示方法を実現するために使用される。メモリ１００３は、高速ランダムメモリを備えるようにしてよく、１つまたは複数の磁気記憶装置、フラッシュメモリ、または他の不揮発性固体メモリなどの不揮発性メモリを備えるようにしてもよい。いくつかの例では、メモリ１００３は、ネットワークを介して端末に接続できるプロセッサ１００１に対して遠隔的に設定されたメモリをさらに備えるようにしてよい。上記のネットワークの例は、インターネット、企業内ネットワーク、ローカルネットワーク、モバイル通信ネットワークおよびその組み合わせを含むが、これらに限定されない。
【０１５８】
上記の伝送装置１００５は、ネットワークを介してデータを受信または送信するために使用され、プロセッサとメモリとの間のデータ伝送にも使用される。上記のネットワークの具体例は、有線ネットワークおよび無線ネットワークを含むようにしてよい。一実施例では、伝送装置１００５は、ネットワークを介して他のネットワークデバイスやルータに接続されることで、インターネットまたはローカルネットワークと通信することができるネットワークインターフェースコントローラ（ＮＩＣ：Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃｏｎｔｒｏｌｌｅｒ）を含む。一実施例では、伝送装置１００５は、無線周波数（ＲＦ：Ｒａｄｉｏ  Ｆｒｅｑｕｅｎｃｙ）モジュールであり、無線方式でインターネットと通信するために使用される。
【０１５９】
具体的に、メモリ１００３は、アプリケーションプログラムを記憶するために使用される。
【０１６０】
プロセッサ１００１は、伝送装置１００５を介してメモリ１００３に記憶されたアプリケーションプログラムを呼び出して、次のステップ、即ち、ゲームアプリケーションの第１クライアントでゲームアプリケーションのワンラウンドのゲームを実行する場合、第１クライアントで第１操作命令を検出するステップであって、ここで、第１クライアントが第１アカウントでログインし、ワンラウンドのゲームに参加するアカウントに第１アカウントと第２アカウントが含まれ、第２アカウントがゲームアプリケーションの第２クライアントをログインするために使用するものであるステップと、第１操作命令に応答して、第１アカウントのワンラウンドのゲームにおける第１操作対象が第１操作を実行するように制御されるステップと、第１クライアントローカルで、第１操作を実行する際に第１クライアントに表示する必要がある第１コンテンツを取得し、第１コンテンツと同時に表示する必要がある第２コンテンツを取得するステップであって、ここで、第２コンテンツは、第２アカウントのワンラウンドのゲームにおける第２操作対象が第２操作を実行する際に第２クライアントに表示する必要があるコンテンツであるステップと、第１クライアントに第１コンテンツと第２コンテンツを同時に表示するステップと、を実行する。
【０１６１】
プロセッサ１００１は、また、以下のステップ、即ち、第２クライアントから送信された第１属性変化情報を取得するステップであって、ここで、第１属性変化情報は、ワンラウンドのゲームにおいて第２操作対象が第２操作を実行することによる属性の変化を記述するための情報であり、第２操作は、第２クライアントで検出された第２操作命令によってトリガされる操作であるステップと、第１クライアントのローカルで第１属性変化情報に基づいて第２コンテンツを決定するステップと、を実行する。
【０１６２】
本願の実施例によれば、ゲームアプリケーションの第１クライアントがゲームアプリケーションのワンラウンドのゲームを実行する場合、第１クライアントで第１操作命令を検出し、第１アカウントのワンラウンドのゲームにおける第１操作対象が第１操作を実行するように制御され、第１クライアントローカルで、第１操作を実行する際に第１クライアントに表示する必要がある第１コンテンツを取得し、第１コンテンツと同時に表示する必要がある第２コンテンツを取得して、ワンラウンドのゲームにおける第１アカウントの第１コンテンツと第２アカウントの第２コンテンツを第１クライアントに同時に表示させることにより、関連技術には同一ラウンドのゲームにおける他の操作者のゲームコンテンツをローカルで表示できない技術的課題が解決され、さらに、ゲームコンテンツの同期表示の技術的効果が達成されることができる。
【０１６３】
本実施例の具体例は、上記のゲームコンテンツの同期表示方法およびゲームコンテンツの同期表示装置に記載された例を参照してもよいため、本実施例は、ここでは説明を省略する。
【０１６４】
当業者であれば、図１０に示す構成は概略であるということを理解でき、端末は、スマートフォン（例えば、Ａｎｄｒｏｉｄ携帯電話、ｉＯＳ携帯電話など）、タブレット、ハンドヘルド、モバイルインターネットデバイス（ＭＩＤ：Ｍｏｂｉｌｅ  Ｉｎｔｅｒｎｅｔ  Ｄｅｖｉｃｅｓ）、ＰＡＤなどの端末設備である。図１０は、上記の電子装置の構成に限定されていない。例えば、端末は、図１０に示されているものよりも多くまたは少ないコンポーネント（例えば、ネットワークインターフェース、表示装置など）を含んでいてもよく、あるいは、図１０に示されているものとは異なる構成を有していてもよい。
【０１６５】
当業者であれば、上記の実施例の各方法におけるすべてまたは一部のステップは、プログラムによって端末デバイスに関連するハードウェアに命令するように完成されることができ、このプログラムは、コンピュータ読み取り可能な記憶媒体に記憶されてもよく、記憶媒体は、フラッシュメモリディスク、リードオンリーメモリ（ＲＯＭ：Ｒｅａｄ−Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ランダムアクセスメモリ（ＲＡＭ：Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、磁気ディスクまたは光ディスクなどを含むようにしてよい。
【０１６６】
また、本願の実施例は、記憶媒体を提供している。本実施例では、上記の記憶媒体は、ゲームコンテンツの同期表示方法のプログラムコードを実行するために使用される。
【０１６７】
本実施例では、上記の記憶媒体は、上記の実施例に示すネットワーク内の複数のネットワークデバイスのうちの少なくとも１つのネットワークデバイスに配置されてもよい。
【０１６８】
本実施例では、記憶媒体は、以下のステップを実行するためのプログラムコードを記憶するように設定されている。
【０１６９】
Ｓ１１で、ゲームアプリケーションの第１クライアントでゲームアプリケーションのワンラウンドのゲームを実行する場合、第１クライアントで第１操作命令を検出し、ここで、第１クライアントが第１アカウントでログインし、ワンラウンドのゲームに参加するアカウントに第１アカウントと第２アカウントが含まれ、第２アカウントがゲームアプリケーションの第２クライアントをログインするために使用するものである。
【０１７０】
Ｓ１２で、前記第１操作命令に基づいて、前記ワンラウンドのゲームにおいて前記第１アカウントに対応する第１操作対象が実行する、前記第１操作命令に対応する第１操作を決定する。
【０１７１】
Ｓ１３で、前記第１操作対象が第１操作を実行する際に第１クライアントに表示する必要がある第１コンテンツを決定し、第１コンテンツと同時に表示する必要がある第２コンテンツを取得し、ここで、第２コンテンツは、第２アカウントのワンラウンドのゲームにおける第２操作対象が第２操作を実行する際に第２クライアントに表示する必要があるコンテンツである。
【０１７２】
Ｓ１４で、第１クライアントに第１コンテンツと第２コンテンツを同時に表示する。
【０１７３】
また、記憶媒体は、以下のステップを実行するためのプログラムコードを記憶するように設定されている。
【０１７４】
Ｓ２１で、第２クライアントから送信された第１属性変化情報を取得し、ここで、第１属性変化情報は、ワンラウンドのゲームにおいて第２操作対象が第２操作を実行することによる属性の変化を記述するための情報である。
【０１７５】
Ｓ２２で、第２操作は、第２クライアントで検出された第２操作命令によってトリガされる操作であり、第１クライアントのローカルで、第１属性変化情報に基づいて第２コンテンツを決定する。
【０１７６】
本実施例における具体例は、上記のゲームコンテンツの同期表示方法およびゲームコンテンツの同期表示装置に記載された例を参照してもよいため、本実施例は、ここでは説明を省略する。
【０１７７】
本実施例では、上記の記憶媒体は、Ｕディスク、リードオンリーメモリ（ＲＯＭ：Ｒｅａｄ−Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ランダムアクセスメモリ（ＲＡＭ：Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、モバイルハードディスク、磁気ディスク、光ディスクなど、プログラムコードを記憶することができる様々な媒体を含むが、これらに限定されない。
【０１７８】
上記の本実施例の番号は説明のためだけに、実施例の優劣を表すものではない。
【０１７９】
上記の実施例に統合されたユニットは、ソフトウェア機能ユニットの形式で実現され、かつ独立した製品として販売または使用される場合、上記コンピュータ読み取り可能な記憶媒体に記憶されてもよい。このような理解に基づいて、本願の技術的解決策について、本質的なものまたは既存の技術に寄与する部分または該技術的解決策の全部または一部が、ソフトウェア製品として具現化されることができ、このコンピュータソフトウェア製品は、記憶媒体に記憶され、本願の各実施例に係る方法の全部または一部のステップを、一台または複数のコンピュータデバイス（パーソナルコンピュータ、サーバ、またはネットワークデバイスなど）に実行させるための若干の命令を含む。
【０１８０】
本願の上記実施例では、各実施例の説明にはそれぞれ重点が置かれており、ある実施例で詳細に説明されていない部分については、他の実施例の関連する説明を参照することができる。
【０１８１】
本願で提供されるいくつかの実施例では、開示されたクライアントは、他の方法で実現され得るということが理解されるべきである。ここで、上記の装置の実施例は、単に例示的なものであり、例えば、前記ユニットの区分は、論理機能の区分のみであり、実際に実現される場合には、他の区分方式があってもよく、例えば、複数のユニットまたはコンポーネントは、他のシステムに結合または統合されてもよく、あるいは、一部の特徴は無視されてもよく、または実行されなくてもよい。さらに、表示または検討された相互間の結合または直接結合または通信接続は、いくつかのインターフェース、ユニットまたはモジュールを介する間接結合または通信接続であってもよく、電気的または他の形態であってもよい。
【０１８２】
前記分離手段として説明されたユニットは、物理的に分離されている場合とされていない場合があり、ユニットとして表示された手段は、物理ユニットである場合とそうでない場合があり、即ち、一箇所に位置してもよく、あるいは、複数のネットワークユニットに分布されてもよい。実際の必要に応じて、その中の一部または全部のユニットを選択して、本実施例の解決策の目的を実現することができる。
【０１８３】
また、本発明の各実施例における各機能ユニットは、１つの処理ユニットに統合されてもよく、各ユニットが個別に物理的に存在してもよく、２つ以上のユニットが１つのユニットに統合されてもよい。上記の統合されたユニットは、ハードウェアの形式で実現されてもよく、ソフトウェア機能ユニットの形式で実現されてもよい。
【０１８４】
以上述べたのは本発明のいくつかの実施例だけであり、当業者にとっては、本願の原理を逸脱しない前提で、いくつかの改良および潤飾を行うことができ、これらの改良および潤飾も本願の保護範囲と見なすべきであることを指摘すべきである。
【図１】
2020528314.tif 000003
【図２】
2020528314.tif 000004
【図３】
2020528314.tif 000005
【図４】
2020528314.tif 000006
【図５】
2020528314.tif 000007
【図６】
2020528314.tif 000008
【図７】
2020528314.tif 000009
【図８】
2020528314.tif 000010
【図９】
2020528314.tif 000011
【図１０】
2020528314.tif 000012
【国際調査報告】
2020528314.tif 000013
2020528314.tif 000014
2020528314.tif 000015
2020528314.tif 000016
2020528314.tif 000017