(57)【特許請求の範囲】
【請求項１】
クライアントに適用されるモバイルゲームデータ処理方法であって、
モバイルゲームの、現在実行のためトリガされている、ターゲット実行状態を取得するステップと、
前記ターゲット実行状態に関わっている少なくとも1つの処理すべきデータオペレーションを探索するステップと、
前記少なくとも1つの処理すべきデータオペレーションが非伝送タイプの処理すべきデータオペレーションを有しているときに、非伝送タイプの前記処理すべきデータオペレーションを第1のデータオペレーションとして決定し、前記モバイルゲームのローカルクライアントで前記第1のデータオペレーションを実行するステップとを含み、
前記第1のデータオペレーションは、インターフェース関連付け情報を表示するオペレーションを含み、前記インターフェース関連付け情報は進捗情報、関連付けられているアニメーション情報、およびオペレーション結果情報のうちの少なくとも1つを含み、
前記非伝送タイプの前記処理すべきデータオペレーションは、サーバとデータ交換することなく前記クライアントそれ自体によって判定され、実行され得るデータオペレーションを指し、
前記少なくとも1つの処理すべきデータオペレーションが伝送タイプの処理すべきデータオペレーションを有しているときに、伝送タイプの前記処理すべきデータオペレーションを第2のデータオペレーションとして決定し、前記第2のデータオペレーションをサーバによるデータ伝送を通じて実行するステップをさらに含み、
前記第2のデータオペレーションで伝送されるゲームデータは、正規表現規則に従って形成され、前記ゲームデータは、オペレーション表現または論理表現を含む、
モバイルゲームデータ処理方法。
【請求項２】
前記少なくとも1つの処理すべきデータオペレーションが伝送タイプの処理すべきデータオペレーションを有しているときに、伝送タイプの前記処理すべきデータオペレーションを第2のデータオペレーションとして決定し、前記第2のデータオペレーションをサーバによるデータ伝送を通じて実行する前記ステップは、
前記少なくとも1つの処理すべきデータオペレーションが伝送タイプの処理すべきデータオペレーションを有し、前記ターゲット実行状態が、ユーザオペレーションに従って前記ローカルクライアントによってトリガされたときに、正規表現規則に従って前記ユーザオペレーションに対応するオペレーション表現を生成するステップであって、前記オペレーション表現は前記ユーザオペレーションに関っているターゲット要素オブジェクトのオブジェクト識別子を含む、ステップと、
前記オペレーション表現を前記サーバに送信し、それにより、前記サーバは前記ターゲット要素オブジェクトの論理関数を取得し、前記論理関数に対応する論理式をターゲットクライアントに送信するステップであって、前記論理式は前記正規表現規則に従って形成され、前記論理関数に関連付けられている少なくとも1つの要素オブジェクトのオブジェクト識別子を含む、ステップとを含む請求項1に記載のモバイルゲームデータ処理方法。
【請求項３】
前記少なくとも1つの処理すべきデータオペレーションが伝送タイプの処理すべきデータオペレーションを有しているときに、伝送タイプの前記処理すべきデータオペレーションを第2のデータオペレーションとして決定し、前記第2のデータオペレーションをサーバによるデータ伝送を通じて実行する前記ステップは、
前記少なくとも1つの処理すべきデータオペレーションが伝送タイプの処理すべきデータオペレーションを有し、前記ターゲット実行状態が、前記サーバによってトリガされたときに、前記サーバによって送信されたターゲット要素オブジェクトの論理関数に対応する論理式を受信するステップであって、前記論理式は前記正規表現規則に従って形成され、前記論理関数に関連付けられている少なくとも1つの要素オブジェクトのオブジェクト識別子を含む、ステップと、
論理ワイルドカード表現内の前記オブジェクト識別子を解析して、前記ターゲット要素オブジェクトの前記論理関数を識別し、前記論理関数に従ってオペレーションを実行するステップとを含む請求項1に記載のモバイルゲームデータ処理方法。
【請求項４】
モバイルゲームの、現在実行のためトリガされている、ターゲット実行状態を取得する前記ステップの前に、
前記モバイルゲームにおけるすべての要素オブジェクトについてそれぞれ対応するオブジェクト識別子を設定するステップと、
前記要素オブジェクトと前記オブジェクト識別子との間のマッピング関係を宣言し、正規表現規則を設定するステップであって、それにより、前記マッピング関係および前記正規表現規則に従って前記オペレーション表現が生成されるか、または前記論理式がその後解析される、ステップとをさらに含み、
前記ターゲット実行状態にある前記少なくとも1つの要素オブジェクトは、前記ローカルクライアントによって監督され、前記監督は動作パラメータの作成処理、論理処理、および削除処理のうちの少なくとも1つを含む請求項2または3に記載のモバイルゲームデータ処理方法。
【請求項５】
モバイルゲームの、現在実行のためトリガされている、ターゲット実行状態を取得する前記ステップの前に、
前記モバイルゲームの規則に従って少なくとも1つの実行状態を設定するステップと、各実行状態について少なくとも1つの処理すべきデータオペレーションを構成するステップとをさらに含み、
前記少なくとも1つの実行状態は、ユーザオペレーションに従って前記ローカルクライアントによって順次トリガされる少なくとも1つのターゲット実行状態を有するか、または前記少なくとも1つの実行状態は、トリガ情報を送信することによって前記サーバによってトリガされた少なくとも1つのターゲット実行状態を有する請求項4に記載のモバイルゲームデータ処理方法。
【請求項６】
モバイルゲームの、現在実行のためトリガされている、ターゲット実行状態を取得する前記ステップの前に、
MVCモデルに基づき関係リスニングキューを設定するステップであって、前記関係リスニングキューは前記少なくとも1つの実行状態とすべてのインターフェース関連付け情報との間および前記モバイルゲーム内のすべての前記要素オブジェクトとすべてのインターフェース関連付け情報との間のマッピング関係を含み、1つの実行状態は1つのインターフェース関連付け情報に対応し、1つの要素オブジェクトは1つのインターフェース関連付け情報に対応する、ステップをさらに含み、
前記モバイルゲームのローカルクライアント側で前記第1のデータオペレーションを実行する前記ステップは、特に、
プリセットされた関係リスニングキューに従って、前記ターゲット実行状態とのマッピング関係を有するインターフェース関連付け情報および/またはターゲット要素オブジェクトとのマッピング関係を有するインターフェース関連付け情報を取得し、前記取得されたインターフェース関連付け情報を前記ローカルクライアントのユーザインターフェースに表示するステップであって、前記ターゲット要素オブジェクトは前記ターゲット実行状態でトリガされる要素オブジェクトである、ステップを含む請求項5に記載のモバイルゲームデータ処理方法。
【請求項７】
クライアントに適用されるモバイルゲームデータ処理装置であって、
モバイルゲームの、現在実行のためトリガされている、ターゲット実行状態を取得するように構成されている状態取得モジュールと、
前記ターゲット実行状態に関わっている少なくとも1つの処理すべきデータオペレーションを探索するように構成されている探索モジュールと、
前記少なくとも1つの処理すべきデータオペレーションが非伝送タイプの処理すべきデータオペレーションを有しているときに、非伝送タイプの前記処理すべきデータオペレーションを第1のデータオペレーションとして決定し、前記モバイルゲームのローカルクライアントで前記第1のデータオペレーションを実行するように構成されている第1の決定および実行モジュールとを備え、
前記第1のデータオペレーションは、インターフェース関連付け情報を表示するオペレーションを含み、前記インターフェース関連付け情報は進捗情報、関連付けられているアニメーション情報、およびオペレーション結果情報のうちの少なくとも1つを含み、
前記非伝送タイプの前記処理すべきデータオペレーションは、サーバとデータ交換することなく前記クライアントそれ自体によって判定され、実行され得るデータオペレーションを指し、
前記少なくとも1つの処理すべきデータオペレーションが伝送タイプの処理すべきデータオペレーションを有しているときに、伝送タイプの前記処理すべきデータオペレーションを第2のデータオペレーションとして決定し、前記第2のデータオペレーションをサーバによるデータ伝送を通じて実行するように構成される第2の決定および実行モジュールをさらに備え、
前記第2のデータオペレーションで伝送されるゲームデータは、正規表現規則に従って形成され、前記ゲームデータは、オペレーション表現または論理表現を含む、
モバイルゲームデータ処理装置。
【請求項８】
前記第2の決定および実行モジュールは、
前記少なくとも1つの処理すべきデータオペレーションが伝送タイプの処理すべきデータオペレーションを有し、前記ターゲット実行状態が、ユーザオペレーションに従って前記ローカルクライアントによってトリガされたときに、前記正規表現規則に従って前記ユーザオペレーションに対応するオペレーション表現を生成するように構成される生成ユニットであって、前記オペレーション表現は前記ユーザオペレーションに関っているターゲット要素オブジェクトのオブジェクト識別子を含む、生成ユニットと、
前記オペレーション表現を前記サーバに送信し、それにより、前記サーバは前記ターゲット要素オブジェクトの論理関数を取得し、前記論理関数に対応する論理式をターゲットクライアントに送信するように構成されている送信ユニットであって、前記論理式は前記正規表現規則に従って形成され、前記論理関数に関連付けられている少なくとも1つの要素オブジェクトのオブジェクト識別子を含む、送信ユニットとを備える請求項7に記載のモバイルゲームデータ処理装置。
【請求項９】
前記第2の決定および実行モジュールは、
前記少なくとも1つの処理すべきデータオペレーションが伝送タイプの処理すべきデータオペレーションを有し、前記ターゲット実行状態が、前記サーバによってトリガされたときに、前記サーバによって送信されたターゲット要素オブジェクトの論理関数に対応する論理式を受信するように構成されている受信ユニットであって、前記論理式は前記正規表現規則に従って形成され、前記論理関数に関連付けられている少なくとも1つの要素オブジェクトのオブジェクト識別子を含む、受信ユニットと、
論理ワイルドカード表現内の前記オブジェクト識別子を解析して、前記ターゲット要素オブジェクトの前記論理関数を識別し、前記論理関数に従ってオペレーションを実行するように構成されている解析および識別ユニットとを備える請求項7に記載のモバイルゲームデータ処理装置。
【請求項１０】
前記モバイルゲームにおけるすべての要素オブジェクトについてそれぞれ対応するオブジェクト識別子を設定するように構成されている第1の設定モジュールをさらに備え、
前記第1の設定モジュールは前記要素オブジェクトと前記オブジェクト識別子との間のマッピング関係を宣言し、正規表現規則を設定するようにさらに構成され、それにより、前記マッピング関係および前記正規表現規則に従って前記オペレーション表現が生成されるか、または前記論理式がその後解析され、
前記ターゲット実行状態にある前記少なくとも1つの要素オブジェクトは、前記ローカルクライアントによって監督され、前記監督は動作パラメータの作成処理、論理処理、および削除処理のうちの少なくと
も1つを含む請求項8または9に記載のモバイルゲームデータ処理装置。
【請求項１１】
前記モバイルゲームの規則に従って少なくとも1つの実行状態を設定し、各実行状態について少なくとも1つの処理すべきデータオペレーションを構成するように構成されている第2の設定モジュールをさらに備え、
前記少なくとも1つの実行状態は、ユーザオペレーションに従って前記ローカルクライアントによって順次トリガされる少なくとも1つのターゲット実行状態を有するか、または前記少なくとも1つの実行状態は、トリガ情報を送信することによって前記サーバによってトリガされた少なくとも1つのターゲット実行状態を有する請求項10に記載のモバイルゲームデータ処理装置。
【請求項１２】
MVCモデルに基づき関係リスニングキューを設定するように構成されている第3の設定モジュールであって、前記関係リスニングキューは前記少なくとも1つの実行状態とすべてのインターフェース関連付け情報との間および前記モバイルゲーム内のすべての前記要素オブジェクトとすべてのインターフェース関連付け情報との間のマッピング関係を含み、1つの実行状態は1つのインターフェース関連付け情報に対応し、1つの要素オブジェクトは1つのインターフェース関連付け情報に対応する、第3の設定モジュールをさらに備え、
前記第1の決定および実行モジュールはプリセットされた関係リスニングキューに従って、前記ターゲット実行状態とのマッピング関係を有するインターフェース関連付け情報および/またはターゲット要素オブジェクトとのマッピング関係を有するインターフェース関連付け情報を取得し、前記取得されたインターフェース関連付け情報を前記ローカルクライアントのユーザインターフェースに表示し、前記ターゲット要素オブジェクトは前記ターゲット実行状態でトリガされる要素オブジェクトである、ように特に構成される請求項11に記載のモバイルゲームデータ処理装置。
【請求項１３】
クライアントに適用されるモバイルゲームデータ処理装置であって、
コンピュータ実行可能プログラムコードを記憶するメモリを備え、
コンピュータ実行可能プログラムコードを実行することにより、
モバイルゲームの、現在実行のためトリガされている、ターゲット実行状態を取得するオペレーションと、
前記ターゲット実行状態に関わっている少なくとも1つの処理すべきデータオペレーションを探索するオペレーションと、
前記少なくとも1つの処理すべきデータオペレーションが非伝送タイプの処理すべきデータオペレーションを有しているときに、非伝送タイプの前記処理すべきデータオペレーションを第1のデータオペレーションとして決定し、前記モバイルゲームのローカルクライアントで第1のデータオペレーションを実行するオペレーションとを実行するモバイルゲームデータ処理装置であって、
前記第1のデータオペレーションは、インターフェース関連付け情報を表示するオペレーションを含み、前記インターフェース関連付け情報は進捗情報、関連付けられているアニメーション情報、およびオペレーション結果情報のうちの少なくとも1つを含み、
前記非伝送タイプの前記処理すべきデータオペレーションは、サーバとデータ交換することなく前記クライアントそれ自体によって判定され、実行され得るデータオペレーションを指し、
前記モバイルゲームデータ処理装置は、前記コンピュータ実行可能プログラムコードを実行することにより、前記少なくとも1つの処理すべきデータオペレーションが伝送タイプの処理すべきデータオペレーションを有しているときに、伝送タイプの前記処理すべきデータオペレーションを第2のデータオペレーションとして決定し、第2のデータオペレーションをサーバによるデータ伝送を通じて実行するステップを実現するものであり、
前記第2のデータオペレーションで伝送されるゲームデータは、正規表現規則に従って形成され、前記ゲームデータは、オペレーション表現または論理表現を含む、
モバイルゲームデータ処理装置。
【請求項１４】
前記少なくとも1つの処理すべきデータオペレーションが伝送タイプの処理すべきデータオペレーションを有しているときに、伝送タイプの前記処理すべきデータオペレーションを第2のデータオペレーションとして決定し、前記第2のデータオペレーションをサーバによるデータ伝送を通じて実行する前記ステップは、
前記少なくとも1つの処理すべきデータオペレーションが伝送タイプの処理すべきデータオペレーションを有し、前記ターゲット実行状態が、ユーザオペレーションに従って前記ローカルクライアントによってトリガされたときに、正規表現規則に従って前記ユーザオペレーションに対応するオペレーション表現を生成するステップであって、前記オペレーション表現は前記ユーザオペレーションに関っているターゲット要素オブジェクトのオブジェクト識別子を含む、ステップと、
前記オペレーション表現を前記サーバに送信し、それにより、前記サーバは前記ターゲット要素オブジェクトの論理関数を取得し、前記論理関数に対応する論理式をターゲットクライアントに送信するステップであって、前記論理式は前記正規表現規則に従って形成され、前記論理関数に関連付けられている少なくとも1つの要素オブジェクトのオブジェクト識別子を含む、ステップとを含む請求項13に記載のモバイルゲームデータ処理装置。
【請求項１５】
前記少なくとも1つの処理すべきデータオペレーションが伝送タイプの処理すべきデータオペレーションを有しているときに、伝送タイプの前記処理すべきデータオペレーションを第2のデータオペレーションとして決定し、前記第2のデータオペレーションをサーバによるデータ伝送を通じて実行する前記ステップは、
前記少なくとも1つの処理すべきデータオペレーションが伝送タイプの処理すべきデータオペレーションを有し、前記ターゲット実行状態が、前記サーバによってトリガされたときに、前記サーバによって送信されたターゲット要素オブジェクトの論理関数に対応する論理式を受信するステップであって、前記論理式は前記正規表現規則に従って形成され、前記論理関数に関連付けられている少なくとも1つの要素オブジェクトのオブジェクト識別子を含む、ステップと、
論理ワイルドカード表現内の前記オブジェクト識別子を解析して、前記ターゲット要素オブジェクトの前記論理関数を識別し、前記論理関数に従ってオペレーションを実行するステップとを含む請求項13に記載のモバイルゲームデータ処理装置。
【請求項１６】
前記コンピュータ実行可能プログラムコードを実行することにより、
モバイルゲームの、現在実行のためトリガされている、ターゲット実行状態を取得する前記オペレーションの前に、
前記モバイルゲームにおけるすべての要素オブジェクトについてそれぞれ対応するオブジェクト識別子を設定するステップと、
前記要素オブジェクトと前記オブジェクト識別子との間のマッピング関係を宣言し、正規表現規則を設定するステップであって、それにより、前記マッピング関係および前記正規表現規則に従って前記オペレーション表現が生成されるか、または前記論理式がその後解析される、ステップとを実現するものであり、
前記ターゲット実行状態にある前記少なくとも1つの要素オブジェクトは、前記ローカルクライアントによって監督され、前記監督は動作パラメータの作成処理、論理処理、および削除処理のうちの少なくとも1つを含む請求項14または15に記載のモバイルゲームデータ処理装置。
【請求項１７】
前記コンピュータ実行可能プログラムコードを実行することにより、
モバイルゲームの、現在実行のためトリガされている、ターゲット実行状態を取得する前記オペレーションの前に、
前記モバイルゲームの規則に従って少なくとも1つの実行状態を設定し、各実行状態について少なくとも1つの処理すべきデータオペレーションを構成するステップを実現するものであり、
前記少なくとも1つの実行状態は、ユーザオペレーションに従って前記ローカルクライアントによって順次トリガされる少なくとも1つのターゲット実行状態を有するか、または前記少なくとも1つの実行状態は、トリガ情報を送信することによって前記サーバによってトリガされた少なくとも1つのターゲット実行状態を有する請求項16に記載のモバイルゲームデータ処理装置。
【請求項１８】
コンピュータ実行可能プログラムコードを記憶する、コンピュータ可読記憶媒体であって、前記コンピュータ実行可能プログラムコードはクライアントに適用されるモバイルゲームデータ処理装置に、
モバイルゲームの、現在実行のためトリガされている、ターゲット実行状態を取得するオペレーションと、
前記ターゲット実行状態に関わっている少なくとも1つの処理すべきデータオペレーションを探索するオペレーションと、
前記少なくとも1つの処理すべきデータオペレーションが非伝送タイプの処理すべきデータオペレーションを有しているときに、非伝送タイプの前記処理すべきデータオペレーションを第1のデータオペレーションとして決定し、前記モバイルゲームのローカルクライアントで第1のデータオペレーションを実行するオペレーションとを実行させ、
前記第1のデータオペレーションは、インターフェース関連付け情報を表示するオペレーションを含み、前記インターフェース関連付け情報は進捗情報、関連付けられているアニメーション情報、およびオペレーション結果情報のうちの少なくとも1つを含み、
前記非伝送タイプの前記処理すべきデータオペレーションは、サーバとデータ交換することなく前記クライアントそれ自体によって判定され、実行され得るデータオペレーションを指し、
前記コンピュータ実行可能プログラムコードは、前記モバイルゲームデータ処理装置に、前記少なくとも1つの処理すべきデータオペレーションが伝送タイプの処理すべきデータオペレーションを有しているときに、伝送タイプの前記処理すべきデータオペレーションを第2のデータオペレーションとして決定し、第2のデータオペレーションをサーバによるデータ伝送を通じて実行するステップをさらに実行させるものであり、
前記第2のデータオペレーションで伝送されるゲームデータは、正規表現規則に従って形成され、前記ゲームデータは、オペレーション表現または論理表現を含む、
コンピュータ可読記憶媒体。
【請求項１９】
前記少なくとも1つの処理すべきデータオペレーションが伝送タイプの処理すべきデータオペレーションを有しているときに、伝送タイプの前記処理すべきデータオペレーションを第2のデータオペレーションとして決定し、前記第2のデータオペレーションをサーバによるデータ伝送を通じて実行する前記ステップは、
前記少なくとも1つの処理すべきデータオペレーションが伝送タイプの処理すべきデータオペレーションを有し、前記ターゲット実行状態が、ユーザオペレーションに従って前記ローカルクライアントによってトリガされたときに、正規表現規則に従って前記ユーザオペレーションに対応するオペレーション表現を生成するステップであって、前記オペレーション表現は前記ユーザオペレーションに関っているターゲット要素オブジェクトのオブジェクト識別子を含む、ステップと、
前記オペレーション表現を前記サーバに送信し、それにより、前記サーバは前記ターゲット要素オブジェクトの論理関数を取得し、前記論理関数に対応する論理式をターゲットクライアントに送信するステップであって、前記論理式は前記正規表現規則に従って形成され、前記論理関数に関連付けられている少なくとも1つの要素オブジェクトのオブジェクト識別子を含む、ステップとを含む請求項18に記載のコンピュータ可読記憶媒体。
【請求項２０】
前記少なくとも1つの処理すべきデータオペレーションが伝送タイプの処理すべきデータオペレーションを有しているときに、伝送タイプの前記処理すべきデータオペレーションを第2のデータオペレーションとして決定し、前記第2のデータオペレーションをサーバによるデータ伝送を通じて実行する前記ステップは、
前記少なくとも1つの処理すべきデータオペレーションが伝送タイプの処理すべきデータオペレーションを有し、前記ターゲット実行状態が、前記サーバによってトリガされたときに、前記サーバによって送信されたターゲット要素オブジェクトの論理関数に対応する論理式を受信するステップであって、前記論理式は前記正規表現規則に従って形成され、前記論理関数に関連付けられている少なくとも1つの要素オブジェクトのオブジェクト識別子を含む、ステップと、
論理ワイルドカード表現内の前記オブジェクト識別子を解析して、前記ターゲット要素オブジェクトの前記論理関数を識別し、前記論理関数に従ってオペレーションを実行するステップとを含む請求項18に記載のコンピュータ可読記憶媒体。
【請求項２１】
前記コンピュータ実行可能プログラムコードは、前記モバイルゲームデータ処理装置に、
モバイルゲームの、現在実行のためトリガされている、ターゲット実行状態を取得する前記オペレーションの前に、
前記モバイルゲームにおけるすべての要素オブジェクトについてそれぞれ対応するオブジェクト識別子を設定するステップと、
前記要素オブジェクトと前記オブジェクト識別子との間のマッピング関係を宣言し、正規表現規則を設定するステップであって、それにより、前記マッピング関係および前記正規表現規則に従って前記オペレーション表現が生成されるか、または前記論理式がその後解析される、ステップをさらに実行させるためのものであり、
前記ターゲット実行状態にある前記少なくとも1つの要素オブジェクトは、前記ローカルクライアントによって監督され、前記監督は動作パラメータの作成処理、論理処理、および削除処理のうちの少なくとも1つを含む請求項19または20に記載のコンピュータ可読記憶媒体。
【請求項２２】
前記コンピュータ実行可能プログラムコードは、前記モバイルゲームデータ処理装置に、
モバイルゲームの、現在実行のためトリガされている、ターゲット実行状態を取得する前記オペレーションの前に、
前記モバイルゲームの規則に従って少なくとも1つの実行状態を設定し、各実行状態について少なくとも1つの処理すべきデータオペレーションを構成するステップをさらに実行させるためのものであり、
前記少なくとも1つの実行状態は、ユーザオペレーションに従って前記ローカルクライアントによって順次トリガされる少なくとも1つのターゲット実行状態を有するか、または前記少なくとも1つの実行状態は、トリガ情報を送信することによって前記サーバによってトリガされた少なくとも1つのターゲット実行状態を有する請求項21に記載のコンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は、全体が参照により組み込まれている、2015年11月17日に出願した中国特許出願第201510791150.3号、名称「MOBILE GAME DATA PROCESSING METHOD AND APPARATUS」の優先権を主張するものである。
【０００２】
本開示は、インターネット技術の分野に関し、具体的には、モバイルゲームデータ処理方法および装置に関する。
【背景技術】
【０００３】
スマートフォンが普及するとともに、モバイルゲームの人気が高まってきた。モバイルゲームの現在のネットワークアーキテクチャは、サーバが複数のクライアントに接続される形のものである。すなわち、サーバが、複数のクライアントとゲームデータを交換することができる。たとえば、n個のクライアントが同時にモバイルゲームをプレイする場合、サーバは、リアルタイムでn個のクライアントのゲームデータを相互に伝送してよく、したがって、各クライアントは、他のクライアントのゲームデータを理解し、n個のクライアントは、同時にゲームをオンラインでプレイする効果を達成することができる。
【０００４】
モバイルゲームの現在のネットワークアーキテクチャは、リアルタイムで各クライアントによって実行される各ステップをサーバ側で理解することを必要とする。すなわち、各クライアントは、実行される各ゲームステップをサーバにフィードバックする必要があり、したがって、サーバはクライアントに、クライアントによってフィードバックされたステップに従って次のオペレーションを実行することを指令することができる。しかしながら、クライアントそれ自体によって判定され、処理され得るいくつかのステップは、サーバとの情報交換の後にのみ実行のためクライアントに通知され得る。したがって、そのような情報交換は冗長であることは明確である。多数のクライアントがモバイルゲームを同時にプレイすると、多くの冗長な情報交換がそれと同時に間違いなく生じ、その結果、いくつかのネットワーク帯域幅が冗長な情報交換によって占有され、ネットワーク帯域幅の浪費を引き起こし、モバイルゲームのネットワークへの円滑な接続に影響を及ぼすことすらあり得る。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明の実施形態は、モバイルゲームデータ処理方法および装置を実現するものであり、これはモバイルゲーム中のネットワーク帯域幅の浪費を回避し、モバイルゲームのネットワークへの円滑な接続を改善し得る。
【課題を解決するための手段】
【０００６】
第1の態様によれば、本開示は、モバイルゲームデータ処理方法を提供し、この方法は
モバイルゲームの、現在実行のためトリガされている、ターゲット実行状態を取得するステップと、
ターゲット実行状態に関わっている少なくとも1つの処理すべきデータオペレーションを探索するステップと、
少なくとも1つの処理すべきデータオペレーションが非伝送タイプの処理すべきデータオペレーションを有しているときに、非伝送タイプの処理すべきデータオペレーションを第1のデータオペレーションとして決定し、モバイルゲームのローカルクライアントで第1のデータオペレーションを実行するステップとを含み、
第1のデータオペレーションは、インターフェース関連付け情報を表示するオペレーションを含み、インターフェース関連付け情報は進捗情報、関連付けられているアニメーション情報、およびオペレーション結果情報のうちの少なくとも1つを含む。
【０００７】
本発明の実施形態は、別のファイル配信方法を提供し、この方法は
ファイル配信タスクに対するタスク要求をタスク管理システムに送信するステップと、
タスク要求に従ってタスク管理システムによって返されるファイル配信タスクを受信するステップと、
ファイル配信タスクに従ってソースステーションからファイルを取得し、ファイルを記憶するステップと、
タスク管理システムに、ファイル取得が成功したことを指示するタスク実行結果を報告し、他のターゲットノードがファイルを取得するためのソースステーションとして働く、ステップとを含む。
【０００８】
第2の態様によれば、本開示は、モバイルゲームデータ処理装置を実現し、この装置は
モバイルゲームの、現在実行のためトリガされている、ターゲット実行状態を取得するように構成されている状態取得モジュールと、
ターゲット実行状態に関わっている少なくとも1つの処理すべきデータオペレーションを探索するように構成されている探索モジュールと、
少なくとも1つの処理すべきデータオペレーションが非伝送タイプの処理すべきデータオペレーションを有しているときに、非伝送タイプの処理すべきデータオペレーションを第1のデータオペレーションとして決定し、モバイルゲームのローカルクライアントで第1のデータオペレーションを実行するように構成されている第1の決定および実行モジュールとを備え、
第1のデータオペレーションは、インターフェース関連付け情報を表示するオペレーションを含み、インターフェース関連付け情報は進捗情報、関連付けられているアニメーション情報、およびオペレーション結果情報のうちの少なくとも1つを含む。
【０００９】
モバイルゲームの、現在実行のためトリガされている、ターゲット実行状態を取得するステップおよびターゲット実行状態に関わっている少なくとも1つの処理すべきデータオペレーションを探索するステップにより、本発明の実施形態は、少なくとも1つの処理すべきデータオペレーションが非伝送タイプの処理すべきデータオペレーションを有しているときに、非伝送タイプの処理すべきデータオペレーションを第1のデータオペレーションとして決定し、モバイルゲームのローカルクライアントで第1のデータオペレーションを実行することができる。したがって、クライアントがターゲット実行状態を分析して、ローカルで実行できる現在のオペレーションを判定するものとしてよく、それにより、クライアントは、サーバと情報を交換することなくローカルクライアントで第1のデータオペレーションを実行することができるが、このことにより、冗長な情報交換を回避し、それによって、ネットワーク帯域幅の浪費を回避し、モバイルゲームのネットワークへの円滑な接続を改善することは明らかである。
【００１０】
本発明の実施形態または従来技術における技術的解決方法をより明確に説明するために、以下において、実施形態または従来技術の説明に必要な添付図面を簡単に紹介する。明らかに、以下の説明の添付図面は、本発明のいくつかの実施形態を示しているにすぎず、当業者であれば、創造的労力を費やすことなくこれらの添付図面から他の図面を導き出すことができる。
【図面の簡単な説明】
【００１１】
【図１】本発明の一実施形態によるモバイルゲームデータ処理方法の概略フローチャートである。
【図１ａ】本発明の一実施形態による状態機械の監視プロセスの概略フローチャートである。
【図２】本発明の一実施形態による別のモバイルゲームデータ処理方法の概略フローチャートである。
【図３】本発明の一実施形態によるモバイルゲームデータ処理装置の概略構造図である。
【図４】本発明の一実施形態による別のモバイルゲームデータ処理装置の概略構造図である。
【図５】本発明の一実施形態による第2の決定および実行モジュールの概略構造図である。
【図６】本発明の一実施形態による別の第2の決定および実行モジュールの概略構造図である。
【図７】本発明の一実施形態によるさらなるモバイルゲームデータ処理装置の概略構造図である。
【発明を実施するための形態】
【００１２】
以下では、本発明の実施形態の添付図面を参照しつつ本発明の実施形態の技術的解決方法について明確に、かつ完全に説明する。明らかに、説明されている実施形態は、実施形態のすべてではなくむしろ本発明の実施形態のうちのいくつかである。創造的労力を費やすことなく本発明の実施形態に基づいて当業者が得る他のすべての実施形態は、本開示の保護の範囲内に収まるものとする。
【００１３】
本発明の実施形態に関わっているクライアントは、限定はしないが、携帯電話、モバイルコンピュータ、タブレットコンピュータ、携帯情報端末(PDA)、メディアプレーヤー、スマートTV、スマートウォッチ、スマートグラス、およびスマートブレスレットを含むユーザ機器上で実行されるゲームクライアントであってよい。
【００１４】
図1を参照すると、図1は、本発明の一実施形態によるモバイルゲームデータ処理方法の概略フローチャートである。この方法は、次のステップを含み得る。
【００１５】
S101。モバイルゲームの、現在実行のためトリガされている、ターゲット実行状態を取得する。
【００１６】
特に、クライアントに適用されるモバイルゲームデータ処理装置は、プリセットされた状態機械を通じてモバイルゲームの、現在実行のためトリガされている、ターゲット実行状態を取得し得る。ターゲット実行状態は、モバイルゲームの規則に従ってプリセットされた少なくとも1つの実行状態のうちの1つであってよい。カードゲームを一例に取ると、プリセットされた少なくとも1つの実行状態は、能動的プレイ初期状態(active playing initial state)、受動的プレイ初期状態(passive playing initial state)、選択状態、スキル開始状態(skill starting state)、プレイ状態(playing state)、などを含み得る。
【００１７】
状態機械は、有限状態機械(FSM)におけるミーリ状態機械であってよい。すなわち、状態機械は、有向グラフであってよく、ノードのグループおよび対応する伝達関数のグループからなる。状態機械は、一連のイベントに応答することによって「実行する」。各イベントは、「現在の」ノードに属している伝達関数の制御範囲内にある。関数の範囲は、ノードの部分集合である。ノードのうちの少なくとも1つは、最終状態になければならず、最終状態に到達したときに、状態機械は停止する。
【００１８】
S102。ターゲット実行状態に関わっている少なくとも1つの処理すべきデータオペレーションを探索する。
【００１９】
特に、ターゲット実行状態を取得した後に、データ処理装置は、ターゲット実行状態に関わっている少なくとも1つの処理すべきデータオペレーションを探索し得る。少なくとも1つの実行状態をプリセットしたときに、データ処理装置は、また、各実行状態について少なくとも1つの処理すべきデータオペレーションを設定し得る。処理すべきデータオペレーションのタイプは、非伝送タイプと伝送タイプとに分割されてよい。非伝送タイプの処理すべきデータオペレーションは、特に、サーバとデータ交換することなくクライアントそれ自体によって判定され、実行され得るデータオペレーションを指し、伝送タイプの処理すべきデータオペレーションは、特に、サーバとデータを交換する必要のあるデータオペレーションを指す。なおもカードゲームを一例に取ると、能動的プレイ初期状態に関わっている少なくとも1つの処理すべきデータオペレーションは、「プレイ進捗バーを表示することをユーザインターフェース(UI)に通知する」を含むものとしてよく、受動的プレイ初期状態に関わっている少なくとも1つの処理すべきデータオペレーションは、「プレイアニメーションを表示することをUIに通知する」および「プレイプロセスに対応するゲームデータをサーバに送信する」を含み得る。「プレイ進捗バーを表示することをUIに通知する」および「プレイアニメーションを表示することをUIに通知する」は、両方とも、非伝送タイプの処理すべきデータオペレーションであり、「プレイプロセスに対応するゲームデータをサーバに送信する」は、伝送タイプの処理すべきデータオペレーションである。能動的プレイ初期状態は、トリガ情報を送信することによってサーバによる実行のためトリガされ得る。トリガ情報は、クライアントが能動的プレイラウンド(active playing round)に入る番であることをサーバが検出したときに生成され、プレイ状態は、ユーザのプレイクリックオペレーション(playing click operation)による実行のためトリガされ得る。
【００２０】
S103。少なくとも1つの処理すべきデータオペレーションが非伝送タイプの処理すべきデータオペレーションを有しているときに、非伝送タイプの処理すべきデータオペレーションを第1のデータオペレーションとして決定し、モバイルゲームのローカルクライアントで第1のデータオペレーションを実行する。
【００２１】
特に、少なくとも1つの処理すべきデータオペレーションが非伝送タイプの処理すべきデータオペレーションを有することをデータ処理装置が検出したときに、装置は処理すべきデータオペレーションがあることを指示し、このことは、ターゲット実行状態において、サーバとデータを交換することなくクライアントそれ自体によって判定され得る。したがって、データ処理装置は、非伝送タイプの処理すべきデータオペレーションを第1のデータオペレーションとして決定し、第1のデータオペレーションをモバイルゲームのローカルクライアント側で実行することができる。第1のデータオペレーションは、インターフェース関連付け情報を表示するオペレーションを含む。インターフェース関連付け情報は、進捗情報、関連付けられているアニメーション情報、およびオペレーション結果情報のうちの少なくとも1つを含む。たとえば、現在取得されているターゲット実行状態が能動的プレイ初期状態である場合に、能動的プレイ初期状態に関わっている処理すべきデータオペレーションである「プレイ進捗バーを表示することをUIに通知する」が非伝送タイプに属していることが検出され得る。したがって、データ処理装置は、プレイ進捗バーを表示することをUIに能動的に通知することができる。すなわち、データ処理装置は、進捗情報を表示するオペレーションを実行することができる。サーバによって、通知メッセージをクライアントに送信してクライアントにプレイ進捗バーを表示することを通知する必要がないので、冗長な情報交換が回避され得る。
【００２２】
適宜、第1のデータオペレーションは、データ交換なしのローカル論理オペレーションをさらに含み得る。ローカル論理オペレーションは、ローカルクライアントで実行できる論理オペレーションを特に指し、サーバによって処理され通知される必要はない。カードゲームを一例に取ると、ユーザがローカルクライアントにおけるカードを選択するためにクリックしたときに、データ処理装置は、現在のターゲット実行状態が選択状態であることを知ることができる。したがって、データ処理装置は、ローカルクライアントで選択状態に関っているローカル論理オペレーションを実行することができる。ローカル論理オペレーションは、特に、カードの攻撃距離およびローカルクライアントのキャラクタロール(character role)と別のクライアントのキャラクタロールとの間のキャラクタ距離に従って、カードによって攻撃され得るキャラクタロールを分析するステップ、およびカードによって攻撃され得ないキャラクタロールのアバタを灰色にするステップである。サーバは分析されたキャラクタ攻撃距離関連付け情報をローカルクライアントに送信する必要も、ローカルクライアントにキャラクタロールのアバタを灰色にすることを通知する必要もないので、情報交換の回数は、効果的に低減され得る。
【００２３】
適宜、少なくとも1つの処理すべきデータオペレーションが伝送タイプの処理すべきデータオペレーションを有しているときに、伝送タイプの処理すべきデータオペレーションは、第2のデータオペレーションとして決定され、第2のデータオペレーションは、サーバによるデータ伝送を通じて実行される。第2のデータオペレーションは、クライアントとサーバとの間でゲームデータを伝送するオペレーションを指し、これはゲームデータを受信するオペレーションとゲームデータを送信するオペレーションとに特に分割され得る。
【００２４】
図1aを参照すると、図1aは、本発明の一実施形態による状態機械の監視プロセスの概略フローチャートである。図1aの状態機械は、カードゲームに適用され、図1aに示されている状態機械では、特に能動的プレイプロセスを一例に取る。図1aの状態機械が実行を開始した後、状態機械は、リアルタイムで、クライアントが能動的プレイ状態に入ったかまたは受動的プレイ状態に入ったかを検出することができ、クライアントが能動的プレイ状態に入ったことを検出した場合に、状態機械は、現在のターゲット実行状態が能動的プレイ初期状態であると決定することができ、クライアントが受動的プレイ状態に入ったことを検出した場合に、状態機械は、現在のターゲット実行状態が受動的プレイ初期状態であると決定することができる。状態機械が、現在のターゲット実行状態が能動的プレイ初期状態であると決定した後に、データ処理装置は、能動的プレイ初期状態に関わっている第1のデータオペレーション(「プレイ進捗バーを表示することをUIに通知する」)を能動的に実行することができ、状態機械は、ユーザがスキルを開始したかどうかを検出し続け、ユーザがクリックしてキーを選択したときに、状態機械は、現在のターゲット実行状態をスキル選択状態にジャンプさせ、それにより、データ処理装置は、スキル選択状態に関っている第1のデータオペレーション(「スキル選択をトリガすることをUIに通知する」)を能動的に実行することができ、ユーザが、スキルを開始しないことを選択したときに、状態機械は、ユーザがハンドを選択したかどうかを検出し続け、ユーザがハンドをクリックした場合に、状態機械は、現在のターゲット実行状態を選択状態にジャンプさせることができ、それにより、データ処理装置は、選択状態に関っている複数の第1のデータオペレーション(「ハンドを初期化する」、「ハンドのクリックをトリガすることをUIに通知する」、「ハンド選択が正当であるかどうかを判定する」、「選択に従って攻撃距離を決定する」、および「攻撃距離に従ってアバタが灰色にされているかどうかを決定することをUIに通知する」)を能動的に実行することができ、状態機械は、ユーザがターゲットを選択したかどうかを検出し続け(ターゲットは、別のクライアントのキャラクタロールまたは別のクライアントの手であってよい)、ユーザがクリックしてターゲットを選択した場合、状態機械は、現在の実行状態をターゲット選択状態にジャンプさせ、それにより、データ処理装置は、ターゲット選択状態に関っている第1のデータオペレーション(「ターゲットを選択することをUIに通知する」)を能動的に実行することができ、状態機械は、ユーザがプレイキーをクリックしたかどうかを検出し続け、ユーザがプレイキーをクリックした場合に、状態機械は、現在の実行状態をプレイ状態にジャンプさせることができ、それにより、データ処理装置は、プレイ状態に関わっている第1のデータオペレーション(「プレイアニメーションを表示することをUIに通知する」)を能動的に実行することができ、データ処理装置は、サーバとのデータ交換を通じてプレイ状態に関わっている第2のデータオペレーション(「プレイプロセスに対応するゲームデータをサーバに送信する」)も送信することができる。状態機械がユーザの破棄クリックオペレーションを検出した後に、状態機械は、そのラウンドの状態を監視することを停止する。
【００２５】
モバイルゲームの、現在実行のためトリガされている、ターゲット実行状態を取得するステップおよびターゲット実行状態に関わっている少なくとも1つの処理すべきデータオペレーションを探索するステップにより、本発明の実施形態は、少なくとも1つの処理すべきデータオペレーションが非伝送タイプの処理すべきデータオペレーションを有しているときに、非伝送タイプの処理すべきデータオペレーションを第1のデータオペレーションとして決定し、モバイルゲームのローカルクライアントで第1のデータオペレーションを実行することができる。したがって、クライアントがターゲット実行状態を分析して、ローカルで実行できる現在のオペレーションを判定するものとしてよく、それにより、クライアントは、サーバと情報を交換することなくローカルクライアントで第1のデータオペレーションを実行することができるが、このことにより、冗長な情報交換を回避し、それによって、ネットワーク帯域幅の浪費を回避し、モバイルゲームのネットワークへの円滑な接続を改善することは明らかである。
【００２６】
図2を参照すると、図2は、本発明の一実施形態による別のモバイルゲームデータ処理方法の概略フローチャートである。この方法は、次のステップを含み得る。
【００２７】
S201。モバイルゲームにおけるすべての要素オブジェクトについてそれぞれ対応するオブジェクト識別子を設定する。
【００２８】
S202。要素オブジェクトとオブジェクト識別子との間のマッピング関係を宣言し、正規表現規則を設定する。
【００２９】
特に、クライアントに適用されるモバイルゲームデータ処理装置は、プリセットされたスキルマネージャを通じてモバイルゲームにおけるすべての要素オブジェクトについてそれぞれ対応するオブジェクト識別子を設定し、要素オブジェクトとオブジェクト識別子との間のマッピング関係を宣言することができ、それにより、データ処理装置は、要素オブジェクトに対応するオブジェクト識別子を取得するか、または宣言されたマッピング関係に従ってオブジェクト識別子に対応する要素オブジェクトを解析することができる。マッピング関係を宣言する特定の方式は、プリコンパイルされたテンプレート特殊化によって要素オブジェクトとオブジェクト識別子との間のマッピング関係を宣言し、自動スキル作成を可能にする方式である。
【００３０】
ゲームカードを一例に取ると、要素オブジェクトは、カードコンテンツ、スキルコンテンツ、ゲームキャラクタロールなどを含み得る。実際のアプリケーションでは、スキルマネージャによって、オブジェクト識別子を設定し、マッピング関係を宣言する特定のプロセスは、3つの部分に分割されるものとしてよく、たとえば、次のとおりである。
【００３１】
ステップ1において、スキルIDおよび攻撃距離は、次のCSkilldata.hファイルで定義される。
enum EskillId
{
//普通のカード
SkillId_sha           = 1,     //sha
SkillId_shan          = 2,    //shan
SkillId_yao           = 3,    //yao
//機器カード
SkillId_ChiTuMa      = 11,    //OffensiveHorse: ChiTuMa
//ヒントカード
SkillId_WuZhongShengYou      = 103,   //WuZhongShengYou
//ヒーロースキル
SkillId_TianLang      = 203,    //TianLang
};
enum EskillDist
{
SkillDist_PanLongGun          =3,    //PanLongGun
SkillDist_BaWangGong          =5,    //BaWangGong
SkillDist_YuChangJian          =2,    //YuChangJian
SkillDist_LongLinDao           =2,    //LongLinDao
SkillDist_Sha                  =1,    //Sha
SkillDist_HuFu                 =1,    //HuFu
SkillDist_OffensiveHorse         =-1,    //OffensiveHorse
SkillDist_DefensiveHorse         =+1,    //DefensiveHorse
SkillDist_Default                =1,    //既定
SkillDist_InvalidDistance         = InvalidDistance,    //InvalidDistance
};
【００３２】
ステップ2において、スキルシーケンスがCSkilldata.hファイル内に生成される(すなわち、要素オブジェクトのオブジェクト識別子および攻撃距離は、クラス名を設定することによって関連付けられる)。
const SKILL_DATA s_SkillData[]=
{
//普通のカード---初期データ
{ SkillId_sha ,"ShaLogic", SkillDist_Sha},
{ SkillId_shan , "ShanLogic", SkillDist_InvalidDistance },
{ SkillId_yao , "YaoLogic", SkillDist_InvalidDistance },
{ SkillId_qipai , "QiPai", SkillDist_Default },
//機器カード---初期データ
{ SkillId_ChiTuMa, "OffensiveHorse Logic", SkillDist_OffensiveHorse },
//ヒーローカード---初期データ
{ SkillId_TianLang, "TianLang Logic", SkillDist_Default },
//ヒントカード---初期データ
{ SkillId_WuZhongShengYou, "WuZhongShengYouLogic", SkillDist_InvalidDistance },
};
【００３３】
ステップ3において、スキルコンストラクタテンプレートクラスの宣言がSkillCreatorFactory.hに追加される。要素オブジェクト集合のクラスは、要素オブジェクトとオブジェクト識別子との間のマッピング関係、要素オブジェクトと攻撃距離との間のマッピング関係、および要素オブジェクトのオブジェクト識別子と攻撃距離との間のマッピング関係を含むので、要素オブジェクトのクラスが宣言された後に、クラス名に対応する各マッピング関係は、クラス名の呼び出しの際に取得されるものとしてよく、それにより、クライアントは、要素オブジェクトのクラス名を呼び出すことによって要素オブジェクトのオブジェクト識別子と攻撃距離とを取得することができる。
【００３４】
各クラス名を宣言した後に、スキルマネージャは要素オブジェクトのライフサイクルを管理するようにさらに構成され得る。すなわち、スキルマネージャは、ゲーム実行時にクライアントによって所有されているすべてのカードを監督することができ、この監督は、作成、論理、および削除のうちの少なくとも1つを含む。たとえば、クライアントが新しいカードを取得した場合に、スキルマネージャは、カードの動作パラメータを作成することができ(動作パラメータは、カードのクラス名に従って取得されるオブジェクト識別子および攻撃距離を含む)、カードがハンド領域から機器領域へ転送されたときに、それに対応して論理処理がカード上で実行されてよく(論理処理は、カードが配置されている領域の状態を特に調整している)、カードがプレイされるか、または捨てられたときに、カードは削除され得る。すなわち、スキルマネージャは、カードをもはや監督しない。
【００３５】
データ処理装置は、オブジェクト識別子を設定し、スキルマネージャを通じてマッピング関係を宣言した後に、正規表現規則をさらに設定し得る。正規表現規則は、いくつかの事前定義済みの特定の文字および特定の文字の組み合わせを使用して「正規文字列」を形成し、「正規文字列」は、文字列に対するフィルタリング論理を表現するために使用される。
【００３６】
カードゲームを一例に取ると、正規表現規則は、カードワイルドカード規則およびオプションのワイルドカード規則を含み得る。
【００３７】
カードワイルドカード規則は次のとおりである。
【００３８】
[カード番号下限flagFromToカード番号上限,1:フラグ<suit>2:フラグ<点>3:フラグ<classId>4.フラグ<カード場所>5:フラグ<指定されたカードIDアグリゲーション(aggregation)>]、
【００３９】
[カードワイルドカード]|[カードワイルドカード]---論理和、2つの条件のうちの1つが満たされる、
【００４０】
[カードワイルドカード]&[カードワイルドカード]---論理積、2つの条件が同時に満たされる、
【００４１】
[カードワイルドカード]%[カードワイルドカード]---第1のワイルドカードとマッチする要素は次のワイルドカードに加わらない。
【００４２】
フラグ:#は相互排除を示し、=は同じであることを示し、*は任意を示し、!は非包含を示し、flagFromTo:-はすべてを示す。
【００４３】
注:(1)〜制限数値範囲が使用されるときに、現在の条件を満たす要素は、次の条件マッチングに加わらない。(2)非サポートマッチングモード:フラグ値が=でありflagFromToが〜であるとき。
【００４４】
定数は以下を含む。
---カードスーツ
Suit = {
Spade = 1, ---スペード
Club = 2, ---クラブ
Heart = 3, ---ハート
Diamond      = 4, ---ダイヤモンド
InvalidSuit    = 0, ---無効
}
---カード場所(card place)
CardPlace = {
Hand         = 1, ---ハンド領域
Equip        = 2, ---機器領域
Judging      = 3, ---判定領域
Special       = 4, ---スキル領域
DiscardedPile = 5, ---捨て山
DrawPile       = 6, ---山札
InvalidPlace  = 7, ---無効な場所
}
【００４５】
注:(1)アグリゲーションが境界シンボルが<>であることを識別し、内部が空であるときに、これは任意を示し、アグリゲーションによって制約されない。(2)要素は、定数、および点の範囲1、2、3、4、5、6、7、8、9、10、11、12、13によりインデックス付けされる。
【００４６】
たとえば、要素オブジェクトに対応する論理関数が、idsが103ではあり得ない異なるブラックスーツ(black suits)を持つ2つのカードを指定しているときに、論理関数に対応するオプションのカード表現は、カードワイルドカード規則に従って[2-2, 1:#<1, 2>5:!<103>]として生成され得るか、または、要素オブジェクトに対応する論理関数が、同じスーツを持つ2つの「shan」カードを指定しているときに、論理関数に対応するオプションのカード表現は、カードワイルドカード規則に従って[2-2,1:=<>3:=<jinkCard>]として生成され得る。
【００４７】
オプションのターゲットワイルドカード規則は次のとおりである。
【００４８】
[ターゲット番号下限flagFromToターゲット番号上限,flag<指定されたターゲットChairIdアグリゲーション>距離]
【００４９】
[ターゲットワイルドカード] | [ターゲットワイルドカード]---論理和、2つの条件のうちの1つが満たされる、を示す。
【００５０】
フラグ:*はユーザとのやり取りを必要とせず、$はユーザとのやり取りを必要とし、flagFromTo:-はすべてを示す。
【００５１】
距離が正数であるときに、これは物理的距離を示し、距離が負数であるときに、これは攻撃距離を示し、距離が0であるか、または構成されていないときに、これは距離制約条件がないことを示す。
【００５２】
要素オブジェクトの論理関数に対応する論理式は、オプションのカード表現および/またはオプションのターゲット表現を含むものとしてよい。オプションのカード表現は、カードワイルド規則に従って生成され、オプションのカード表現は、論理関数によって選択され得るカード範囲を示す。オプションのターゲット表現は、オプションのターゲットワイルド規則に従って生成され、オプションのターゲット表現は、論理関数によって選択され得るターゲットキャラクタロールを示す。スキルが開始されるか、またはカードがプレイされるときに、データ処理装置は、ユーザオペレーションに対応するゲームデータ(ゲームデータはユーザ選択スキルまたはユーザ選択カードまたはユーザ選択ターゲットキャラクタロールを含む)に従って対応するオペレーション表現を生成することができる。オペレーション表現は、選択されたカード表現および/または選択されたターゲット表現を含み得る。選択されたカード表現は、カードワイルドカード規則に従って生成されてよく、選択されたカード表現は、ユーザによって選択されたカード情報を示し、選択されたカード表現は、また、ユーザによって選択されたスキルのオブジェクト識別子を伝えることもできる。選択されたターゲット表現は、オプションのターゲットワイルド規則に従って生成されるものとしてよく、選択されたターゲット表現は、ユーザによって選択されたターゲットキャラクタロールを示す。
【００５３】
S203。モバイルゲームの規則に従って少なくとも1つの実行状態を設定し、各実行状態について少なくとも1つの処理すべきデータオペレーションを構成する。
【００５４】
特に、ステップS203およびステップS201〜202は、特定の順序で実行されることはなく、ステップS201〜S203は、プリセットされたプロセスである。データ処理装置は、モバイルゲームの規則に従って少なくとも1つの実行状態を設定し、各実行状態について少なくとも1つの処理すべきデータオペレーションを構成するものとしてよく、少なくとも1つの状態は、ユーザオペレーションに従ってローカルクライアントによって順次トリガされる少なくとも1つのターゲット実行状態を有するか、または少なくとも1つの状態は、トリガ情報を送信することによってサーバによってトリガされた少なくとも1つのターゲット実行状態を有する。カードゲームを一例に取ると、プリセットされた少なくとも1つの実行状態は、能動的プレイ初期状態、受動的プレイ初期状態、選択状態、スキル開始状態、プレイ状態、などを含み得る。処理すべきデータオペレーションのタイプは、非伝送タイプと伝送タイプとに分割されてよい。非伝送タイプの処理すべきデータオペレーションは、特に、サーバとデータ交換することなくクライアントそれ自体によって判定され、実行され得るデータオペレーションを指し、伝送タイプの処理すべきデータオペレーションは、特に、サーバとデータを交換する必要のあるデータオペレーションを指す。なおもカードゲームを一例に取ると、能動的プレイ初期状態に関わっている少なくとも1つの処理すべきデータオペレーションは、「プレイ進捗バーを表示することをUIに通知する」を含むものとしてよく、受動的プレイ初期状態に関わっている少なくとも1つの処理すべきデータオペレーションは、「プレイアニメーションを表示することをUIに通知する」および「プレイプロセスに対応するゲームデータをサーバに送信する」を含み得る。「プレイ進捗バーを表示することをUIに通知する」および「プレイアニメーションを表示することをUIに通知する」は、両方とも、非伝送タイプの処理すべきデータオペレーションであり、「プレイプロセスに対応するゲームデータをサーバに送信する」は、伝送タイプの処理すべきデータオペレーションである。能動的プレイ初期状態は、トリガ情報を送信することによってサーバによる実行のためトリガされ得る。トリガ情報は、クライアントが能動的プレイラウンドに入る番であることをサーバが検出したときに生成され、プレイ状態は、ユーザのプレイクリックオペレーションによる実行のためトリガされ得る。
【００５５】
S204。モバイルゲームの、現在実行のためトリガされている、ターゲット実行状態を取得する。
【００５６】
S205。ターゲット実行状態に関わっている少なくとも1つの処理すべきデータオペレーションを探索する。
【００５７】
S206。少なくとも1つの処理すべきデータオペレーションが非伝送タイプの処理すべきデータオペレーションを有しているときに、非伝送タイプの処理すべきデータオペレーションを第1のデータオペレーションとして決定し、モバイルゲームのローカルクライアントで第1のデータオペレーションを実行する。
【００５８】
ステップS204〜S206の特定の実装について図1の対応する実施形態においてS101〜S103が参照されてよく、これらについては本明細書でさらには説明しない。
【００５９】
S207。少なくとも1つの処理すべきデータオペレーションが伝送タイプの処理すべきデータオペレーションを有しているときに、伝送タイプの処理すべきデータオペレーションを第2のデータオペレーションとして決定し、第2のデータオペレーションをサーバによるデータ伝送を通じて実行し、第2のデータオペレーションで伝送されるゲームデータは、正規表現規則に従って形成され、ゲームデータは、オペレーション表現または論理オペレーションを含む。
【００６０】
特に、少なくとも1つの処理すべきデータオペレーションが伝送タイプの処理すべきデータオペレーションを有しているときに、これは、サーバとの情報交換を必要とする処理すべきデータオペレーションがターゲット実行状態で存在することを指示する。したがって、データ処理装置は、伝送タイプの処理すべきデータオペレーションを第2のデータオペレーションとして決定し、第2のデータオペレーションをサーバとのデータ伝送を通じて実行することができる。第2のデータオペレーションは、ゲームデータを受信するオペレーションとゲームデータを送信するオペレーションとに特に分割され得る。ゲームデータは、正規表現規則に従って形成され、ゲームデータは、オペレーション表現または論理オペレーションを含む。
【００６１】
さらに、少なくとも1つの処理すべきデータオペレーションが伝送タイプの処理すべきデータオペレーションを有し、ターゲット実行状態が、ユーザオペレーションに従ってローカルクライアントによってトリガされることがさらに検出されたときに、第2のデータオペレーションは、ゲームデータを送信するオペレーションとして決定されてよく、次いで、第2のデータオペレーションをサーバとのデータ伝送を通じて実行する特定のプロセスは、正規表現規則に従ってユーザオペレーションに対応するオペレーション表現を生成するステップであって、オペレーション表現はユーザオペレーションに関っているターゲット要素オブジェクトのオブジェクト識別子を含む、ステップ、およびオペレーション表現をサーバに送信し、それにより、サーバはターゲット要素オブジェクトの論理関数を取得し、論理関数に対応する論理式をターゲットクライアントに送信するステップであって、論理式は正規表現規則に従って形成され、論理関数に関連付けられている少なくとも1つの要素オブジェクトのオブジェクト識別子を含む、ステップであってよい。カードゲームを一例に取ると、ユーザがカードAを選択し、ターゲットキャラクタロールBを選択し、クリックしてプレイする場合、データ処理装置は、ユーザオペレーションに対応するオペレーション表現を生成して、そのオペレーション表現をサーバに送信することができる。オペレーション表現は、選択されたカード表現および選択されたターゲット表現を含み得る。選択されたカード表現は、カードワイルドカード規則に従って生成されてよく、選択されたカード表現は、ユーザによって選択されたカードAの情報(すなわち、カードAに対応するオブジェクト識別子)を示す。選択されたターゲット表現は、オプションのターゲットワイルドカード規則に従って生成されてよく、選択されたターゲット表現は、ユーザによって選択されたターゲットキャラクタロールBの情報(すなわち、ターゲットキャラクタロールBに対応するオブジェクト識別子)を示す。
【００６２】
さらに、少なくとも1つの処理すべきデータオペレーションが伝送タイプの処理すべきデータオペレーションを有し、ターゲット実行状態がサーバによってトリガされることがさらに検出されたときに、第2のデータオペレーションは、ゲームデータを受信するオペレーションとして決定されてよく、次いで、第2のデータオペレーションをサーバとのデータ伝送を通じて実行する特定のプロセスは、サーバによって送信されたターゲット要素オブジェクトの論理関数に対応する論理式を受信するステップであって、論理式は正規表現規則に従って形成され、論理関数に関連付けられている少なくとも1つの要素オブジェクトのオブジェクト識別子を含む、ステップ、および論理ワイルドカード表現内のオブジェクト識別子を解析して、ターゲット要素オブジェクトの論理関数を識別し、論理関数に従ってオペレーションを実行するステップであってよい。なおも、カードゲームを一例に取ると、別のクライアントがローカルクライアントとのキャラクタロールを選択し、カードAをプレイしたときに、サーバは、ローカルクライアントに、カードAの論理関数に対応する論理式を送信する。論理式は、オプションのカード表現を含んでいてよい。オプションのカード表現は、カードワイルド規則に従って生成され、オプションのカード表現は、カードAの論理関数によって選択され得るカード範囲を示す。論理式を受信した後に、ローカルクライアントは、論理式内のオプションのカード表現を解析して、カードAの論理関数を取得し、それにより、ローカルクライアントは、カードAの論理関数によって選択され得るカード範囲に従って有効なカードを選択することができる。別の例では、カードAの論理関数に対応するオプションのカード表現が[2-2,1:#<1,2>5:!<103>]である場合、データ処理装置は、カードワイルドカード規則に従って、「2-2」が2枚のカードを選択することを指し、「1:#<1,2>」が異なるブラックスーツを有するカードを選択することを指し、「5:!<103>」が選択されたカードが103という番号を振ることができないことを指すと分析することができ、それにより、カードAの論理関数によって選択され得るカード範囲は「103という番号を振ることができない異なるブラックスーツを有する2枚のカードを指定する」であることを知る。
【００６３】
本発明の実施形態におけるデータ処理装置は、cocos2d-x-UFOに基づき開発された派生システムモジュールである。cocos2d-x-UFOは、UFOエンジンに基づくcocos2d-x(オープンソースモバイル2Dゲームフレームワーク)の優れた特性を融合し、ボーンアニメーション、パーティクルエフェクト、FBOオフスクリーンレンダリング、シェーダ(レンダラ)、モーションアセンブラ、Scud、およびインクリメンタルアップグレードモジュールなどの優れた機能モジュールを融合したものである。cocos2d-x-UFOは、クロスプラットフォームであり、iOS、Android、Symbian、Win32、WP7、Bada、およびiMacなどのプラットフォームをカバーすることができる。サーバと各クライアントとの間のデータ交換は、オペレーション表現または論理式に基づく伝送であり、オペレーション表現および論理式は両方ともプリセットされたオブジェクト識別子によって形成され、オブジェクト識別子は普遍的である。すなわち、様々なプラットフォームのクライアントがオブジェクト識別子を識別することができる。したがって、クロスプラットフォーム統合の実装可能性がさらに改善される。さらに、オペレーション表現および論理式の占有容量は比較的小さいので、オペレーション表現または論理式を伝送するステップでは、ネットワークパケットトラフィックを節減できる。すべてのカード、スキル、およびヒーローはオブジェクト識別子として設定されるので、新しい要素オブジェクトが追加されるときに、新しい要素オブジェクトの適応効果は、クライアントおよびサーバ内の新しい要素オブジェクトのオブジェクト識別子を構成するステップと、サーバ内の新しい要素オブジェクトの論理関数に対応する論理式を構成するステップとによってのみ達成されるものとしてよく、これにより、クライアント内の新しい要素オブジェクトと既存の要素オブジェクトとの間の複製関係の多数の変更を回避し、それによって、プロジェクトの人件費を低減し、スキルの開発サイクルを短縮することができる。
【００６４】
適宜、データ処理装置は、モデルビューコントローラ(MVC)モデルに基づき関係リスニングキュー(relationship listening queue)もプリセットすることができ、関係リスニングキューは少なくとも1つの実行状態とすべてのインターフェース関連付け情報との間およびモバイルゲーム内のすべての要素オブジェクトとすべてのインターフェース関連付け情報との間のマッピング関係を含み、1つの実行状態は1つのインターフェース関連付け情報に対応し、1つの要素オブジェクトは1つのインターフェース関連付け情報に対応する。データ処理装置は、すべてのインターフェース関連付け情報から分離されるべきである、MVCモデルを通じて1つのコンポーネント内の少なくとも1つの実行状態およびすべての要素オブジェクトを集めることができ、それにより、インターフェース関連付け情報が修正されたときに、少なくとも1つの実行状態およびすべての要素オブジェクトを書き換えることは不要であり、関係リスニングキュー内のマッピング関係を修正するだけでよい。したがって、モバイルゲームのローカルクライアント側で第1のデータオペレーションを実行するステップは、特に、プリセットされた関係リスニングキューに従って、ターゲット実行状態とのマッピング関係を有するインターフェース関連付け情報および/またはターゲット要素オブジェクトとのマッピング関係を有するインターフェース関連付け情報を取得するステップと、取得されたインターフェース関連付け情報をローカルクライアントのユーザインターフェースに表示するステップとを特に含み、ターゲット要素オブジェクトはターゲット実行状態でトリガされる要素オブジェクトである(すなわち、ユーザによって操作される要素オブジェクト)。
【００６５】
特に、データ処理装置は、ObserverインターフェースおよびObservableクラスを作成することができる。1つのマッピング関係(1つの実行状態と1つのインターフェース関連付け情報との間のマッピング関係を指すか、または1つの要素オブジェクトと1つのインターフェース関連付け情報との間のマッピング関係を指す)が、1つのObserverインターフェースに対応するので、少なくとも1つの実行状態とすべてのインターフェース関連付け情報との間、およびモバイルゲーム内のすべての要素オブジェクトとすべてのインターフェース関連付け情報との間のマッピング関係は、すべて、Observableクラスの関係リスニングキューに登録され得る。すなわち、すべてのObserverインターフェースは、Observableクラスの関係リスニングキューに登録される。
【００６６】
モバイルゲームの、現在実行のためトリガされている、ターゲット実行状態を取得するステップおよびターゲット実行状態に関わっている少なくとも1つの処理すべきデータオペレーションを探索するステップにより、本発明の実施形態は、少なくとも1つの処理すべきデータオペレーションが非伝送タイプの処理すべきデータオペレーションを有しているときに、非伝送タイプの処理すべきデータオペレーションを第1のデータオペレーションとして決定し、モバイルゲームのローカルクライアントで第1のデータオペレーションを実行することができる。したがって、クライアントがターゲット実行状態を分析して、ローカルで実行できる現在のオペレーションを判定するものとしてよく、それにより、クライアントは、サーバと情報を交換することなくローカルクライアントで第1のデータオペレーションを実行することができるが、このことにより、冗長な情報交換を回避し、それによって、ネットワーク帯域幅の浪費を回避し、モバイルゲームのネットワークへの円滑な接続を改善することが明らかである。さらに、サーバと各クライアントとの間のデータ交換は、オペレーション表現または論理式に基づく伝送であり、オペレーション表現および論理式は両方ともプリセットされたオブジェクト識別子によって形成され、オブジェクト識別子は普遍的である。すなわち、様々なプラットフォームのクライアントがオブジェクト識別子を識別することができる。したがって、クロスプラットフォーム統合の実装可能性がさらに改善される。さらに、オペレーション表現および論理式の占有容量は比較的小さいので、オペレーション表現または論理式を伝送するステップでは、ネットワークパケットトラフィックを節減できる。すべてのカード、スキル、およびヒーローはオブジェクト識別子として設定されるので、新しい要素オブジェクトが追加されるときに、新しい要素オブジェクトの適応効果は、クライアントおよびサーバ内の新しい要素オブジェクトのオブジェクト識別子を構成するステップと、サーバ内の新しい要素オブジェクトの論理関数に対応する論理式を構成するステップとによってのみ達成されるものとしてよく、これにより、クライアント内の新しい要素オブジェクトと既存の要素オブジェクトとの間の複製関係の多数の変更を回避し、それによって、プロジェクトの人件費を低減し、スキルの開発サイクルを短縮することができる。それに加えて、結合度は、すべてのインターフェース関連付け情報から分離されるべきMVCを通じて1つのコンポーネントにおける少なくとも1つの実行状態およびすべての要素オブジェクトを集めることによって大幅に減らすことができる。
【００６７】
図3を参照すると、図3は、本発明の一実施形態によるモバイルゲームデータ処理装置の概略構造図である。データ処理装置1は、クライアントに適用されてよく、データ処理装置1は、状態取得モジュール10と、探索モジュール20と、第1の決定および実行モジュール30とを備え得る。
【００６８】
状態取得モジュール10は、モバイルゲームの、現在実行のためトリガされている、ターゲット実行状態を取得するように構成される。
【００６９】
特に、状態取得モジュール10は、プリセットされた状態機械を通じてモバイルゲームの、現在実行のためトリガされている、ターゲット実行状態を取得する。ターゲット実行状態は、モバイルゲームの規則に従ってプリセットされた少なくとも1つの実行状態のうちの1つであってよい。カードゲームを一例に取ると、プリセットされた少なくとも1つの実行状態は、能動的プレイ初期状態、受動的プレイ初期状態、選択状態、スキル開始状態、プレイ状態、などを含み得る。
【００７０】
状態機械は、FSMにおけるミーリ状態機械であってよい。すなわち、状態機械は、有向グラフであってよく、ノードのグループおよび対応する伝達関数のグループからなる。状態機械は、一連のイベントに応答することによって「実行する」。各イベントは、「現在の」ノードに属している伝達関数の制御範囲内にある。関数の範囲は、ノードの部分集合である。ノードのうちの少なくとも1つは、最終状態になければならず、最終状態に到達したときに、状態機械は停止する。
【００７１】
探索モジュール20は、ターゲット実行状態に関わっている少なくとも1つの処理すべきデータオペレーションを探索するように構成される。
【００７２】
特に、状態取得モジュール10がターゲット実行状態を取得した後に、探索モジュール20は、ターゲット実行状態に関わっている少なくとも1つの処理すべきデータオペレーションを探索することができる。少なくとも1つの実行状態がプリセットされたときに、各実行状態について少なくとも1つの処理すべきデータオペレーションも設定され得る。処理すべきデータオペレーションのタイプは、非伝送タイプと伝送タイプとに分割されてよい。非伝送タイプの処理すべきデータオペレーションは、特に、サーバとデータ交換することなくクライアントそれ自体によって判定され、実行され得るデータオペレーションを指し、伝送タイプの処理すべきデータオペレーションは、特に、サーバとデータを交換する必要のあるデータオペレーションを指す。なおもカードゲームを一例に取ると、能動的プレイ初期状態に関わっている少なくとも1つの処理すべきデータオペレーションは、「プレイ進捗バーを表示することをUIに通知する」を含むものとしてよく、受動的プレイ初期状態に関わっている少なくとも1つの処理すべきデータオペレーションは、「プレイアニメーションを表示することをUIに通知する」および「プレイプロセスに対応するゲームデータをサーバに送信する」を含み得る。「プレイ進捗バーを表示することをUIに通知する」および「プレイアニメーションを表示することをUIに通知する」は、両方とも、非伝送タイプの処理すべきデータオペレーションであり、「プレイプロセスに対応するゲームデータをサーバに送信する」は、伝送タイプの処理すべきデータオペレーションである。能動的プレイ初期状態は、トリガ情報を送信することによってサーバによる実行のためトリガされ得る。トリガ情報は、クライアントが能動的プレイラウンドに入る番であることをサーバが検出したときに生成され、プレイ状態は、ユーザのプレイクリックオペレーションによる実行のためトリガされ得る。
【００７３】
第1の決定および実行モジュール30は、少なくとも1つの処理すべきデータオペレーションが非伝送タイプの処理すべきデータオペレーションを有しているときに、非伝送タイプの処理すべきデータオペレーションを第1のデータオペレーションとして決定し、モバイルゲームのローカルクライアントで第1のデータオペレーションを実行するように構成される。
【００７４】
特に、少なくとも1つの処理すべきデータオペレーションが非伝送タイプの処理すべきデータオペレーションを有することが検出されたときに、これは処理すべきデータオペレーションがあることを指示し、このことは、ターゲット実行状態において、サーバとデータを交換することなくクライアントそれ自体によって判定され得る。したがって、第1の決定および実行モジュール30は、非伝送タイプの処理すべきデータオペレーションを第1のデータオペレーションとして決定し、第1のデータオペレーションをモバイルゲームのローカルクライアント側で実行することができる。第1のデータオペレーションは、インターフェース関連付け情報を表示するオペレーションを含む。インターフェース関連付け情報は、進捗情報、関連付けられているアニメーション情報、およびオペレーション結果情報のうちの少なくとも1つを含む。たとえば、現在取得されているターゲット実行状態が能動的プレイ初期状態である場合に、能動的プレイ初期状態に関わっている処理すべきデータオペレーションである「プレイ進捗バーを表示することをUIに通知する」が非伝送タイプに属していることが検出され得る。したがって、第1の決定および実行モジュール30は、プレイ進捗バーを表示することをUIに能動的に通知することができる。すなわち、第1の決定および実行モジュール30は、進捗情報を表示するオペレーションを実行することができる。サーバによって、通知メッセージをクライアントに送信してクライアントにプレイ進捗バーを表示することを通知する必要がないので、冗長な情報交換が回避され得る。
【００７５】
適宜、第1のデータオペレーションは、データ交換なしのローカル論理オペレーションをさらに含み得る。ローカル論理オペレーションは、ローカルクライアントで実行できる論理オペレーションを特に指し、サーバによって処理され通知される必要はない。カードゲームを一例に取ると、ユーザがローカルクライアントにおけるカードを選択するためにクリックしたときに、第1の決定および実行モジュール30は、現在のターゲット実行状態が選択状態であることを知ることができる。したがって、データ処理装置1は、ローカルクライアントで選択状態に関っているローカル論理オペレーションを実行することができる。ローカル論理オペレーションは、特に、カードの攻撃距離およびローカルクライアントのキャラクタロールと別のクライアントのキャラクタロールとの間のキャラクタ距離に従って、カードによって攻撃され得るキャラクタロールを分析するステップ、およびカードによって攻撃され得ないキャラクタロールのアバタを灰色にするステップである。サーバは分析されたキャラクタ攻撃距離関連付け情報をローカルクライアントに送信する必要も、ローカルクライアントにキャラクタロールのアバタを灰色にすることを通知する必要もないので、情報交換の回数は、効果的に低減され得る。
【００７６】
モバイルゲームの、現在実行のためトリガされている、ターゲット実行状態を取得するステップおよびターゲット実行状態に関わっている少なくとも1つの処理すべきデータオペレーションを探索するステップによる、本発明の実施形態は、少なくとも1つの処理すべきデータオペレーションが非伝送タイプの処理すべきデータオペレーションを有しているときに、非伝送タイプの処理すべきデータオペレーションを第1のデータオペレーションとして決定し、モバイルゲームのローカルクライアントで第1のデータオペレーションを実行することができる。したがって、クライアントがターゲット実行状態を分析して、ローカルで実行できる現在のオペレーションを判定するものとしてよく、それにより、クライアントは、サーバと情報を交換することなくローカルクライアントで第1のデータオペレーションを実行することができるが、このことにより、冗長な情報交換を回避し、それによって、ネットワーク帯域幅の浪費を回避し、モバイルゲームのネットワークへの円滑な接続を改善する。
【００７７】
図4を参照すると、図4は、本発明の一実施形態による別のモバイルゲームデータ処理装置の概略構造図である。データ処理装置1は、クライアントに適用され得る。データ処理装置1は、図3の対応する実施形態における状態取得モジュール10と、探索モジュール20と、第1の決定および実行モジュール30とを備えるものとしてよく、データ処理装置1は、第1の設定モジュール40と、第2の設定モジュール50と、第3の設定モジュール60と、第2の決定および実行モジュール70とをさらに備え得る。
【００７８】
第1の設定モジュール40は、モバイルゲームにおけるすべての要素オブジェクトについてそれぞれ対応するオブジェクト識別子を設定するように構成される。
【００７９】
第1の設定モジュール40は、要素オブジェクトとオブジェクト識別子との間のマッピング関係を宣言し、正規表現規則を設定するようにさらに構成され、それにより、マッピング関係および正規表現規則に従ってオペレーション表現が生成されるか、または論理式がその後解析される。
【００８０】
特に、第1の設定モジュール40は、プリセットされたスキルマネージャを通じてモバイルゲームにおけるすべての要素オブジェクトについてそれぞれ対応するオブジェクト識別子を設定し、要素オブジェクトとオブジェクト識別子との間のマッピング関係を宣言することができ、それにより、データ処理装置1は、要素オブジェクトに対応するオブジェクト識別子を取得するか、または宣言されたマッピング関係に従ってオブジェクト識別子に対応する要素オブジェクトを解析することができる。マッピング関係を宣言する特定の方式は、プリコンパイルされたテンプレート特殊化によって要素オブジェクトとオブジェクト識別子との間のマッピング関係を宣言し、自動スキル作成を可能にする方式である。
【００８１】
ゲームカードを一例に取ると、要素オブジェクトは、カードコンテンツ、スキルコンテンツ、ゲームキャラクタロールなどを含み得る。実際のアプリケーションでは、スキルマネージャによって、オブジェクト識別子を設定し、マッピング関係を宣言する特定のプロセスは、3つの部分に分割されるものとしてよく、たとえば、次のとおりである。
【００８２】
ステップ1において、スキルIDおよび攻撃距離は、次のCSkilldata.hファイルで定義される。
enum EskillId
{
//普通のカード
SkillId_sha           = 1,     //sha
SkillId_shan          = 2,    //shan
SkillId_yao           = 3,    //yao
//機器カード
SkillId_ChiTuMa      = 11,     //オフェンシブホース: ChiTuMa
//ヒントカード
SkillId_WuZhongShengYou      = 103,    //WuZhongShengYou
//ヒーロースキル
SkillId_TianLang      = 203,    //TianLang
};
enum EskillDist
{
SkillDist_PanLongGun          =3,    //PanLongGun
SkillDist_BaWangGong          =5,    //BaWangGong
SkillDist_YuChangJian          =2,    //YuChangJian
SkillDist_LongLinDao           =2,    //LongLinDao
SkillDist_Sha                  =1,    //Sha
SkillDist_HuFu                 =1,    //HuFu
SkillDist_OffensiveHorse         =-1,    //オフェンシブホース
SkillDist_DefensiveHorse         =+1,    //ディフェンシブホース
SkillDist_Default                =1,    //既定の攻撃距離
SkillDist_InvalidDistance         = InvalidDistance,    //無効な距離
};
【００８３】
ステップ2において、スキルシーケンスがCSkilldata.hファイル内に生成される(すなわち、要素オブジェクトのオブジェクト識別子および攻撃距離は、クラス名を設定することによって関連付けられる)。
const SKILL_DATA s_SkillData[]=
{
//普通のカード---初期データ
{ SkillId_sha ,"ShaLogic", SkillDist_Sha},
{ SkillId_shan , "ShanLogic", SkillDist_InvalidDistance },
{ SkillId_yao , "YaoLogic", SkillDist_InvalidDistance },
{ SkillId_qipai , "QiPai", SkillDist_ Default },
//機器カード---初期データ
{ SkillId_ChiTuMa, "OffensiveHorse Logic", SkillDist_OffensiveHorse },
//ヒーロースキル---初期データ
{ SkillId_TianLang, "TianLang Logic", SkillDist_ Default },
//ヒントカード---初期データ
{ SkillId_WuZhongShengYou, "WuZhongShengYouLogic", SkillDist_InvalidDistance },
};
【００８４】
ステップ3において、スキルコンストラクタテンプレートクラスの宣言がSkillCreatorFactory.hに追加される。要素オブジェクト集合のクラスは、要素オブジェクトとオブジェクト識別子との間のマッピング関係、要素オブジェクトと攻撃距離との間のマッピング関係、および要素オブジェクトのオブジェクト識別子と攻撃距離との間のマッピング関係を含むので、要素オブジェクトのクラスが宣言された後に、クラス名に対応する各マッピング関係は、クラス名の呼び出しの際に取得されるものとしてよく、それにより、データ処理装置1は、要素オブジェクトのクラス名を呼び出すことによって要素オブジェクトのオブジェクト識別子と攻撃距離とを取得することができる。
【００８５】
各クラス名を宣言した後に、スキルマネージャは要素オブジェクトのライフサイクルを管理するようにさらに構成され得る。すなわち、スキルマネージャは、ゲーム実行時にクライアントによって所有されているすべてのカードを監督することができ、この監督は、作成、論理、および削除のうちの少なくとも1つを含む。たとえば、クライアントが新しいカードを取得した場合に、スキルマネージャは、カードの動作パラメータを作成することができ(動作パラメータは、カードのクラス名に従って取得されるオブジェクト識別子および攻撃距離を含む)、カードがハンド領域から機器領域へ転送されたときに、それに対応して論理処理がカード上で実行されてよく(論理処理は、カードが配置されている領域の状態を特に調整している)、カードがプレイされるか、または捨てられたときに、カードは削除され得る。すなわち、スキルマネージャは、カードをもはや監督しない。
【００８６】
第1の設定モジュール40は、オブジェクト識別子を設定し、スキルマネージャを通じてマッピング関係を宣言した後に、正規表現規則をさらに設定し得る。正規表現規則は、いくつかの事前定義済みの特定の文字および特定の文字の組み合わせを使用して「正規文字列」を形成し、「正規文字列」は、文字列に対するフィルタリング論理を表現するために使用される。
【００８７】
カードゲームを一例に取ると、正規表現規則は、カードワイルドカード規則およびオプションのワイルドカード規則を含み得る。
【００８８】
カードワイルドカード規則は次のとおりである。
【００８９】
[カード番号下限flagFromToカード番号上限,1:フラグ<suit>2:フラグ<点>3:フラグ<classId>4.フラグ<カード場所>5:フラグ<指定されたカードIDアグリゲーション>]、
【００９０】
[カードワイルドカード]|[カードワイルドカード]---論理和、2つの条件のうちの1つが満たされる、
【００９１】
[カードワイルドカード]&[カードワイルドカード]---論理積、2つの条件が同時に満たされる、
【００９２】
[カードワイルドカード]%[カードワイルドカード]---第1のワイルドカードとマッチする要素は次のワイルドカードに加わらない。
【００９３】
フラグ:#は相互排除を示し、=は同じであることを示し、*は任意を示し、!は非包含を示し、flagFromTo:-はすべてを示す。
【００９４】
注:(1)〜制限数値範囲が使用されるときに、現在の条件を満たす要素は、次の条件マッチングに加わらない。(2)非サポートマッチングモード:フラグ値が=でありflagFromToが〜であるとき。
【００９５】
定数は以下を含む。
---カードスーツ
Suit = {
Spade = 1, ---スペード
Club = 2, ---クラブ
Heart = 3, ---ハート
Diamond      = 4, ---ダイヤモンド
InvalidSuit    = 0, ---無効
}
---カード場所
CardPlace = {
Hand          = 1, ---ハンド領域
Equip          = 2, ---機器領域
Judging        = 3, ---判定領域
Special         = 4, ---スキル領域
DiscardedPile    = 5, ---捨て山
DrawPile              = 6, ---山札
InvalidPlace    = 7, ---無効な場所
}
【００９６】
注:(1)アグリゲーションが境界シンボルが<>であることを識別し、内部が空であるときに、これは任意を示し、アグリゲーションによって制約されない。(2)要素は、定数、および点の範囲1、2、3、4、5、6、7、8、9、10、11、12、13によりインデックス付けされる。
【００９７】
たとえば、要素オブジェクトに対応する論理関数が、idsが103ではあり得ない異なるブラックスーツ(black suits)を持つ2つのカードを指定しているときに、論理関数に対応するオプションのカード表現は、カードワイルドカード規則に従って[2-2,1:#<1,2>5:!<103>]として生成され得るか、または、要素オブジェクトに対応する論理関数が、同じスーツを持つ2つの「shan」カードを指定しているときに、論理関数に対応するオプションのカード表現は、カードワイルドカード規則に従って[2-2,1:=<>3:=<jinkCard>]として生成され得る。
【００９８】
オプションのターゲットワイルドカード規則は次のとおりである。
【００９９】
[ターゲット番号下限flagFromToターゲット番号上限,flag<指定されたターゲットChairIdアグリゲーション>距離]
【０１００】
[ターゲットワイルドカード] | [ターゲットワイルドカード]---論理和、2つの条件のうちの1つが満たされる、を示す。
【０１０１】
フラグ:*はユーザとのやり取りを必要とせず、$はユーザとのやり取りを必要とし、flagFromTo:-はすべてを示す。
【０１０２】
距離が正数であるときに、これは物理的距離を示し、距離が負数であるときに、これは攻撃距離を示し、距離が0であるか、または構成されていないときに、これは距離制約条件がないことを示す。
【０１０３】
要素オブジェクトの論理関数に対応する論理式は、オプションのカード表現および/またはオプションのターゲット表現を含むものとしてよい。オプションのカード表現は、カードワイルド規則に従って生成され、オプションのカード表現は、論理関数によって選択され得るカード範囲を示す。オプションのターゲット表現は、オプションのターゲットワイルド規則に従って生成され、オプションのターゲット表現は、論理関数によって選択され得るターゲットキャラクタロールを示す。スキルが開始されるか、またはカードがプレイされるときに、データ処理装置1は、ユーザオペレーションに対応するゲームデータ(ゲームデータはユーザ選択スキルまたはユーザ選択カードまたはユーザ選択ターゲットキャラクタロールを含む)に従って対応するオペレーション表現を生成することができる。オペレーション表現は、選択されたカード表現および/または選択されたターゲット表現を含み得る。選択されたカード表現は、カードワイルドカード規則に従って生成されてよく、選択されたカード表現は、ユーザによって選択されたカード情報を示し、選択されたカード表現は、また、ユーザによって選択されたスキルのオブジェクト識別子を伝えることもできる。選択されたターゲット表現は、オプションのターゲットワイルド規則に従って生成されるものとしてよく、選択されたターゲット表現は、ユーザによって選択されたターゲットキャラクタロールを示す。
【０１０４】
第2の設定モジュール50は、モバイルゲームの規則に従って少なくとも1つの実行状態を設定し、各実行状態について少なくとも1つの処理すべきデータオペレーションを構成するように構成される。
【０１０５】
特に、第2の設定モジュール50および第1の設定モジュール40の実行時間は、特定の順序であり得ない。第2の設定モジュール50は、モバイルゲームの規則に従って少なくとも1つの実行状態を設定し、各実行状態について少なくとも1つの処理すべきデータオペレーションを構成するものとしてよく、少なくとも1つの状態は、ユーザオペレーションに従ってローカルクライアントによって順次トリガされる少なくとも1つのターゲット実行状態を有するか、または少なくとも1つの状態は、トリガ情報を送信することによってサーバによってトリガされた少なくとも1つのターゲット実行状態を有する。カードゲームを一例に取ると、プリセットされた少なくとも1つの実行状態は、能動的プレイ初期状態、受動的プレイ初期状態、選択状態、スキル開始状態、プレイ状態、などを含み得る。処理すべきデータオペレーションのタイプは、非伝送タイプと伝送タイプとに分割されてよい。非伝送タイプの処理すべきデータオペレーションは、特に、サーバとデータ交換することなくクライアントそれ自体によって判定され、実行され得るデータオペレーションを指し、伝送タイプの処理すべきデータオペレーションは、特に、サーバとデータを交換する必要のあるデータオペレーションを指す。なおもカードゲームを一例に取ると、能動的プレイ初期状態に関わっている少なくとも1つの処理すべきデータオペレーションは、「プレイ進捗バーを表示することをUIに通知する」を含むものとしてよく、受動的プレイ初期状態に関わっている少なくとも1つの処理すべきデータオペレーションは、「プレイアニメーションを表示することをUIに通知する」および「プレイプロセスに対応するゲームデータをサーバに送信する」を含み得る。「プレイ進捗バーを表示することをUIに通知する」および「プレイアニメーションを表示することをUIに通知する」は、両方とも、非伝送タイプの処理すべきデータオペレーションであり、「プレイプロセスに対応するゲームデータをサーバに送信する」は、伝送タイプの処理すべきデータオペレーションである。能動的プレイ初期状態は、トリガ情報を送信することによってサーバによる実行のためトリガされ得る。トリガ情報は、クライアントが能動的プレイラウンドに入る番であることをサーバが検出したときに生成され、プレイ状態は、ユーザのプレイクリックオペレーションによる実行のためトリガされ得る。
【０１０６】
第3の設定モジュール60は、MVCモデルに基づき関係リスニングキューを設定するように構成され、関係リスニングキューは少なくとも1つの実行状態とすべてのインターフェース関連付け情報との間およびモバイルゲーム内のすべての要素オブジェクトとすべてのインターフェース関連付け情報との間のマッピング関係を含み、1つの実行状態は1つのインターフェース関連付け情報に対応し、1つの要素オブジェクトは1つのインターフェース関連付け情報に対応する。
【０１０７】
第1の決定および実行モジュール30は、プリセットされた関係リスニングキューに従って、ターゲット実行状態とのマッピング関係を有するインターフェース関連付け情報および/またはターゲット要素オブジェクトとのマッピング関係を有するインターフェース関連付け情報を取得し、取得されたインターフェース関連付け情報をローカルクライアントのユーザインターフェースに表示するように特に構成され、ターゲット要素オブジェクトはターゲット実行状態でトリガされる要素オブジェクトである。
【０１０８】
特に、第3の設定モジュール60は、ObserverインターフェースおよびObservableクラスを作成することができる。1つのマッピング関係(1つの実行状態と1つのインターフェース関連付け情報との間のマッピング関係を指すか、または1つの要素オブジェクトと1つのインターフェース関連付け情報との間のマッピング関係を指す)が、Observerインターフェースに対応するので、少なくとも1つの実行状態とすべてのインターフェース関連付け情報との間、およびモバイルゲーム内のすべての要素オブジェクトとすべてのインターフェース関連付け情報との間のマッピング関係は、すべて、Observableクラスの関係リスニングキューに登録され得る。すなわち、すべてのObserverインターフェースは、Observableクラスの関係リスニングキューに登録される。第3の設定モジュール60は、すべてのインターフェース関連付け情報から分離されるべきである、MVCモデルを通じて1つのコンポーネント内の少なくとも1つの実行状態およびすべての要素オブジェクトを集めることができ、それにより、インターフェース関連付け情報が修正されたときに、少なくとも1つの実行状態およびすべての要素オブジェクトを書き換えることは不要であり、関係リスニングキュー内のマッピング関係を修正するだけでよい。
【０１０９】
第2の決定および実行モジュール70は、少なくとも1つの処理すべきデータオペレーションが伝送タイプの処理すべきデータオペレーションを有しているときに、伝送タイプの処理すべきデータオペレーションを第2のデータオペレーションとして決定し、第2のデータオペレーションをサーバによるデータ伝送を通じて実行するように構成される。
【０１１０】
特に、少なくとも1つの処理すべきデータオペレーションが伝送タイプの処理すべきデータオペレーションを有しているときに、これは、サーバとの情報交換を必要とする処理すべきデータオペレーションがターゲット実行状態で存在することを指示する。したがって、第2の決定および実行モジュール70は、伝送タイプの処理すべきデータオペレーションを第2のデータオペレーションとして決定し、第2のデータオペレーションをサーバとのデータ伝送を通じて実行することができる。第2のデータオペレーションは、ゲームデータを受信するオペレーションとゲームデータを送信するオペレーションとに特に分割され得る。ゲームデータは、正規表現規則に従って形成され、ゲームデータは、オペレーション表現または論理オペレーションを含む。
【０１１１】
さらに、図5を参照すると、図5は、本発明の一実施形態による第2の決定および実行モジュール70の概略構造図である。第2の決定および実行モジュール70は、生成ユニット701と送信ユニット702とを備え得る。
【０１１２】
生成ユニット701は、少なくとも1つの処理すべきデータオペレーションが伝送タイプの処理すべきデータオペレーションを有し、ターゲット実行状態が、ユーザオペレーションに従ってローカルクライアントによってトリガされたときに、正規表現規則に従ってユーザオペレーションに対応するオペレーション表現を生成するように構成され、オペレーション表現はユーザオペレーションに関っているターゲット要素オブジェクトのオブジェクト識別子を含む。
【０１１３】
送信ユニット702は、オペレーション表現をサーバに送信し、それにより、サーバはターゲット要素オブジェクトの論理関数を取得し、論理関数に対応する論理式をターゲットクライアントに送信する、ように構成され、論理式は正規表現規則に従って形成され、論理関数に関連付けられている少なくとも1つの要素オブジェクトのオブジェクト識別子を含む。
【０１１４】
特に、少なくとも1つの処理すべきデータオペレーションが伝送タイプの処理すべきデータオペレーションを有し、ターゲット実行状態が、ユーザオペレーションに従ってローカルクライアントによってトリガされることがさらに検出されたときに、第2のデータオペレーションは、ゲームデータを送信するオペレーションとして決定されてよく、次いで、生成ユニット701は、正規表現規則に従ってユーザオペレーションに対応するオペレーション表現を生成するものとしてよく、送信ユニット702は、オペレーション表現をサーバに送信する。カードゲームを一例に取ると、ユーザがカードAを選択し、ターゲットキャラクタロールBを選択し、クリックしてプレイする場合、生成ユニット701は、ユーザオペレーションに対応するオペレーション表現を生成することができ、送信ユニット702は、そのオペレーション表現をサーバに送信する。オペレーション表現は、選択されたカード表現および選択されたターゲット表現を含み得る。選択されたカード表現は、カードワイルドカード規則に従って生成されてよく、選択されたカード表現は、ユーザによって選択されたカードAの情報(すなわち、カードAに対応するオブジェクト識別子)を示す。選択されたターゲット表現は、オプションのターゲットワイルドカード規則に従って生成されてよく、選択されたターゲット表現は、ユーザによって選択されたターゲットキャラクタロールBの情報(すなわち、ターゲットキャラクタロールBに対応するオブジェクト識別子)を示す。
【０１１５】
さらに、図6を参照すると、図6は、本発明の一実施形態による別の第2の決定および実行モジュール70の概略構造図である。第2の決定および実行モジュール70は、受信ユニット703と解析および識別ユニット704とを備え得る。
【０１１６】
受信ユニット703は、少なくとも1つの処理すべきデータオペレーションが伝送タイプの処理すべきデータオペレーションを有し、ターゲット実行状態が、サーバによってトリガされたときに、サーバによって送信されたターゲット要素オブジェクトの論理関数に対応する論理式を受信するように構成され、論理式は正規表現規則に従って形成され、論理関数に関連付けられている少なくとも1つの要素オブジェクトのオブジェクト識別子を含む。
【０１１７】
解析および識別ユニット704は、論理ワイルドカード表現内のオブジェクト識別子を解析して、ターゲット要素オブジェクトの論理関数を識別し、論理関数に従ってオペレーションを実行するように構成される。
【０１１８】
特に、少なくとも1つの処理すべきデータオペレーションが伝送タイプの処理すべきデータオペレーションを有し、ターゲット実行状態がサーバによってトリガされることがさらに検出されたときに、第2のデータオペレーションは、ゲームデータを受信するオペレーションとして決定されてよく、次いで、受信ユニット703は、サーバによって送信されたターゲット要素オブジェクトの論理関数に対応する論理式を受信することができ、解析および識別ユニット704は、論理ワイルドカード表現内のオブジェクト識別子を解析して、ターゲット要素オブジェクトの論理関数を識別し、論理関数に従ってオペレーションを実行する。なおも、カードゲームを一例に取ると、別のクライアントがローカルクライアントとのキャラクタロールを選択し、カードAをプレイしたときに、サーバは、ローカルクライアントに、カードAの論理関数に対応する論理式を送信する。論理式は、オプションのカード表現を含んでいてよい。オプションのカード表現は、カードワイルド規則に従って生成され、オプションのカード表現は、カードAの論理関数によって選択され得るカード範囲を示す。受信ユニット703が、論理式を受信した後に、解析および識別ユニット704は、論理式内のオプションのカード表現を解析して、カードAの論理関数を取得し、それにより、ローカルクライアントは、カードAの論理関数によって選択され得るカード範囲に従って有効なカードを選択することができる。別の例では、カードAの論理関数に対応するオプションのカード表現が[2-2,1:#<1,2>5:!<103>]である場合、データ処理装置は、カードワイルドカード規則に従って、「2-2」が2枚のカードを選択することを指し、「1:#<1,2>」が異なるブラックスーツを有するカードを選択することを指し、「5:!<103>」が選択されたカードが103という番号を振ることができないことを指すと分析することができ、それにより、カードAの論理関数によって選択され得るカード範囲は「103という番号を振ることができない異なるブラックスーツを有する2枚のカードを指定する」であることを知る。
【０１１９】
本発明の実施形態におけるデータ処理装置1は、cocos2d-x-UFOに基づき開発された派生システムモジュールである。cocos2d-x-UFOは、UFOエンジンに基づくcocos2d-x(オープンソースモバイル2Dゲームフレームワーク)の優れた特性を融合し、ボーンアニメーション、パーティクルエフェクト、FBOオフスクリーンレンダリング、シェーダ(レンダラ)、モーションアセンブラ、Scud、およびインクリメンタルアップグレードモジュールなどの優れた機能モジュールを融合したものである。cocos2d-x-UFOは、クロスプラットフォームであり、iOS、Android、Symbian、Win32、WP7、Bada、およびiMacなどのプラットフォームをカバーすることができる。
【０１２０】
モバイルゲームの、現在実行のためトリガされている、ターゲット実行状態を取得するステップおよびターゲット実行状態に関わっている少なくとも1つの処理すべきデータオペレーションを探索するステップによる、本発明の実施形態は、少なくとも1つの処理すべきデータオペレーションが非伝送タイプの処理すべきデータオペレーションを有しているときに、非伝送タイプの処理すべきデータオペレーションを第1のデータオペレーションとして決定し、モバイルゲームのローカルクライアントで第1のデータオペレーションを実行することができる。したがって、クライアントがターゲット実行状態を分析して、ローカルで実行できる現在のオペレーションを判定するものとしてよく、それにより、クライアントは、サーバと情報を交換することなくローカルクライアントで第1のデータオペレーションを実行することができるが、このことにより、冗長な情報交換を回避し、それによって、ネットワーク帯域幅の浪費を回避し、モバイルゲームのネットワークへの円滑な接続を改善する。さらに、サーバと各クライアントとの間のデータ交換は、オペレーション表現または論理式に基づく伝送であり、オペレーション表現および論理式は両方ともプリセットされたオブジェクト識別子によって形成され、オブジェクト識別子は普遍的である。すなわち、様々なプラットフォームのクライアントがオブジェクト識別子を識別することができる。したがって、クロスプラットフォーム統合の実装可能性がさらに改善される。さらに、オペレーション表現および論理式の占有容量は比較的小さいので、オペレーション表現または論理式を伝送するステップでは、ネットワークパケットトラフィックを節減できる。すべてのカード、スキル、およびヒーローはオブジェクト識別子として設定されるので、新しい要素オブジェクトが追加されるときに、新しい要素オブジェクトの適応効果は、クライアントおよびサーバ内の新しい要素オブジェクトのオブジェクト識別子を構成するステップと、サーバ内の新しい要素オブジェクトの論理関数に対応する論理式を構成するステップとによってのみ達成されるものとしてよく、これにより、クライアント内の新しい要素オブジェクトと既存の要素オブジェクトとの間の複製関係の多数の変更を回避し、それによって、プロジェクトの人件費を低減し、スキルの開発サイクルを短縮することができる。それに加えて、結合度は、すべてのインターフェース関連付け情報から分離されるべきMVCを通じて1つのコンポーネントにおける少なくとも1つの実行状態およびすべての要素オブジェクトを集めることによって大幅に減らすことができる。
【０１２１】
図7を参照すると、図7は、本発明の一実施形態によるさらなるモバイルゲームデータ処理装置の概略構造図である。図7に示されているように、データ処理装置1000は、少なくとも1つのプロセッサ1001、たとえばCPUと、少なくとも1つのネットワークインターフェース1004と、ユーザインターフェース1003と、メモリ1005と、少なくとも1つの通信バス1002とを備えるものとしてよい。通信バス1002は、これらのコンポーネントの間の接続通信を実装するために使用される。ユーザインターフェース1003は、ディスプレイおよびキーボードを備え得る。適宜、ユーザインターフェース1003は、標準の有線インターフェースおよびワイヤレスインターフェースをさらに含み得る。適宜、ネットワークインターフェース1004は、標準の有線インターフェースおよびワイヤレスインターフェース(Wi-Fiインターフェース)を含み得る。メモリ1005は、高速RAMメモリであってよく、および不揮発性メモリ、たとえば、少なくとも1つの磁気ディスクメモリであってもよい。適宜、メモリ1005は、さらに、プロセッサ1001から離れたところにある少なくとも1つの記憶装置デバイスであってよい。図7に示されているように、メモリ105はコンピュータ記憶媒体として、オペレーティングシステム、ネットワーク通信モジュール、ユーザインターフェースモジュール、およびデバイス制御アプリケーションを備え得る。
【０１２２】
図7に示されているデータ処理装置1000では、ネットワークインターフェース1004は、もっぱら、サーバを接続し、サーバとのデータ通信を実行するために使用され,ユーザインターフェース1003は、もっぱら、ユーザに対する入力インターフェースおよびユーザによって出力されるデータを取得するために使用される。プロセッサ1001はメモリ1005に記憶されているデバイス制御アプリケーションを呼び出して、次のステップを特に実行するために使用されるものとしてよい。
【０１２３】
モバイルゲームの、現在実行のためトリガされている、ターゲット実行状態を取得するステップと、
【０１２４】
ターゲット実行状態に関わっている少なくとも1つの処理すべきデータオペレーションを探索するステップと、
【０１２５】
少なくとも1つの処理すべきデータオペレーションが非伝送タイプの処理すべきデータオペレーションを有しているときに、非伝送タイプの処理すべきデータオペレーションを第1のデータオペレーションとして決定し、モバイルゲームのローカルクライアントで第1のデータオペレーションを実行するステップとを含み、
【０１２６】
第1のデータオペレーションは、インターフェース関連付け情報の表示オペレーションを含み、インターフェース関連付け情報は進捗情報、関連付けられているアニメーション情報、およびオペレーション結果情報のうちの少なくとも1つを含む。
【０１２７】
一実施形態において、プロセッサ1001は、また、
【０１２８】
少なくとも1つの処理すべきデータオペレーションが伝送タイプの処理すべきデータオペレーションを有しているときに、伝送タイプの処理すべきデータオペレーションを第2のデータオペレーションとして決定するステップと、第2のデータオペレーションをサーバによるデータ伝送を通じて実行するステップとを実行し、
【０１２９】
第2のデータオペレーションで伝送されるゲームデータは、正規表現規則に従って形成され、ゲームデータは、オペレーション表現または論理オペレーションを含む。
【０１３０】
一実施形態において、プロセッサ1001は、少なくとも1つの処理すべきデータオペレーションが伝送タイプの処理すべきデータオペレーションを有しているときに、伝送タイプの処理すべきデータオペレーションを第2のデータオペレーションとして決定し、第2のデータオペレーションをサーバによるデータ伝送を通じて実行するときに、特に、
【０１３１】
少なくとも1つの処理すべきデータオペレーションが伝送タイプの処理すべきデータオペレーションを有し、ターゲット実行状態が、ユーザオペレーションに従ってローカルクライアントによってトリガされたときに、正規表現規則に従ってユーザオペレーションに対応するオペレーション表現を生成するステップであって、オペレーション表現はユーザオペレーションに関っているターゲット要素オブジェクトのオブジェクト識別子を含む、ステップと、
【０１３２】
オペレーション表現をサーバに送信し、それにより、サーバはターゲット要素オブジェクトの論理関数を取得し、論理関数に対応する論理式をターゲットクライアントに送信するステップであって、論理式は正規表現規則に従って形成され、論理関数に関連付けられている少なくとも1つの要素オブジェクトのオブジェクト識別子を含む、ステップとを実行する。
【０１３３】
一実施形態において、プロセッサ1001は、少なくとも1つの処理すべきデータオペレーションが伝送タイプの処理すべきデータオペレーションを有しているときに、伝送タイプの処理すべきデータオペレーションを第2のデータオペレーションとして決定し、第2のデータオペレーションをサーバによるデータ伝送を通じて実行するときに、特に、
【０１３４】
少なくとも1つの処理すべきデータオペレーションが伝送タイプの処理すべきデータオペレーションを有し、ターゲット実行状態が、サーバによってトリガされたときに、サーバによって送信されたターゲット要素オブジェクトの論理関数に対応する論理式を受信するステップであって、論理式は正規表現規則に従って形成され、論理関数に関連付けられている少なくとも1つの要素オブジェクトのオブジェクト識別子を含む、ステップと、
【０１３５】
論理ワイルドカード表現内のオブジェクト識別子を解析して、ターゲット要素オブジェクトの論理関数を識別し、論理関数に従ってオペレーションを実行するステップとを実行する。
【０１３６】
一実施形態において、モバイルゲームの、現在実行のためトリガされている、ターゲット実行状態を取得する前に、プロセッサ1001は、
【０１３７】
モバイルゲームにおけるすべての要素オブジェクトについてそれぞれ対応するオブジェクト識別子を設定するステップと、
【０１３８】
要素オブジェクトとオブジェクト識別子との間のマッピング関係を宣言し、正規表現規則を設定するステップであって、それにより、マッピング関係および正規表現規則に従ってオペレーション表現が生成されるか、または論理式がその後解析される、ステップとをさらに実行し、
【０１３９】
ターゲット実行状態にある少なくとも1つの要素オブジェクトは、ローカルクライアントによって監督され、この監督は作成、論理、および削除のうちの少なくとも1つを含む。
【０１４０】
一実施形態において、モバイルゲームの、現在実行のためトリガされている、ターゲット実行状態を取得する前に、プロセッサ1001は、
【０１４１】
モバイルゲームの規則に従って少なくとも1つの実行状態を設定するステップと、各実行状態について少なくとも1つの処理すべきデータオペレーションを構成するステップとをさらに実行し、
【０１４２】
少なくとも1つの状態は、ユーザオペレーションに従ってローカルクライアントによって順次トリガされる少なくとも1つのターゲット実行状態を有するか、または少なくとも1つの状態は、トリガ情報を送信することによってサーバによってトリガされた少なくとも1つのターゲット実行状態を有する。
【０１４３】
一実施形態において、モバイルゲームの、現在実行のためトリガされている、ターゲット実行状態を取得する前に、プロセッサ1001は、
【０１４４】
MVCモデルに基づき関係リスニングキューを設定するステップであって、関係リスニングキューは少なくとも1つの実行状態とすべてのインターフェース関連付け情報との間およびモバイルゲーム内のすべての要素オブジェクトとすべてのインターフェース関連付け情報との間のマッピング関係を含み、1つの実行状態は1つのインターフェース関連付け情報に対応し、1つの要素オブジェクトは1つのインターフェース関連付け情報に対応する、ステップをさらに実行し、
【０１４５】
モバイルゲームのローカルクライアント側で第1のデータオペレーションを実行するときに、プロセッサ1001は、特に、
【０１４６】
プリセットされた関係リスニングキューに従って、ターゲット実行状態とのマッピング関係を有するインターフェース関連付け情報および/またはターゲット要素オブジェクトとのマッピング関係を有するインターフェース関連付け情報を取得し、取得されたインターフェース関連付け情報をローカルクライアントのユーザインターフェースに表示するステップであって、ターゲット要素オブジェクトはターゲット実行状態でトリガされる要素オブジェクトである、ステップを実行する。
【０１４７】
モバイルゲームの、現在実行のためトリガされている、ターゲット実行状態を取得するステップおよびターゲット実行状態に関わっている少なくとも1つの処理すべきデータオペレーションを探索するステップにより、本発明の実施形態は、少なくとも1つの処理すべきデータオペレーションが非伝送タイプの処理すべきデータオペレーションを有しているときに、非伝送タイプの処理すべきデータオペレーションを第1のデータオペレーションとして決定し、モバイルゲームのローカルクライアントで第1のデータオペレーションを実行することができる。したがって、クライアントがターゲット実行状態を分析して、ローカルで実行できる現在のオペレーションを判定するものとしてよく、それにより、クライアントは、サーバと情報を交換することなくローカルクライアントで第1のデータオペレーションを実行することができるが、このことにより、冗長な情報交換を回避し、それによって、ネットワーク帯域幅の浪費を回避し、モバイルゲームのネットワークへの円滑な接続を改善する。さらに、サーバと各クライアントとの間のデータ交換は、オペレーション表現または論理式に基づく伝送であり、オペレーション表現および論理式は両方ともプリセットされたオブジェクト識別子によって形成され、オブジェクト識別子は普遍的である。すなわち、様々なプラットフォームのクライアントがオブジェクト識別子を識別することができる。したがって、クロスプラットフォーム統合の実装可能性がさらに改善される。さらに、オペレーション表現および論理式の占有容量は比較的小さいので、オペレーション表現または論理式を伝送するステップでは、ネットワークパケットトラフィックを節減できる。すべてのカード、スキル、およびヒーローはオブジェクト識別子として設定されるので、新しい要素オブジェクトが追加されるときに、新しい要素オブジェクトの適応効果は、クライアントおよびサーバ内の新しい要素オブジェクトのオブジェクト識別子を構成するステップと、サーバ内の新しい要素オブジェクトの論理関数に対応する論理式を構成するステップとによってのみ達成されるものとしてよく、これにより、クライアント内の新しい要素オブジェクトと既存の要素オブジェクトとの間の複製関係の多数の変更を回避し、それによって、プロジェクトの人件費を低減し、スキルの開発サイクルを短縮することができる。それに加えて、結合度は、すべてのインターフェース関連付け情報から分離されるべきMVCを通じて1つのコンポーネントにおける少なくとも1つの実行状態およびすべての要素オブジェクトを集めることによって大幅に減らすことができる。
【０１４８】
本開示の一実装によれば、不揮発性機械可読記憶媒体がさらに実現され、これは、モバイルゲームのデータ処理のためのプログラム製品を記憶するものであり、プログラム製品はコンピュータシステムに、モバイルゲームの、現在実行のためトリガされている、ターゲット実行状態を取得するステップと、ターゲット実行状態に関わっている少なくとも1つの処理すべきデータオペレーションを探索するステップと、少なくとも1つの処理すべきデータオペレーションが非伝送タイプの処理すべきデータオペレーションを有しているときに、非伝送タイプの処理すべきデータオペレーションを第1のデータオペレーションとして決定し、モバイルゲームのローカルクライアントで第1のデータオペレーションを実行するステップであって、第1のデータオペレーションは、インターフェース関連付け情報の表示オペレーションを含み、インターフェース関連付け情報は進捗情報、関連付けられているアニメーション情報、およびオペレーション結果情報のうちの少なくとも1つを含む、ステップとを実行させるための機械実行可能命令を含む。
【０１４９】
少なくとも1つの処理すべきデータオペレーションが伝送タイプの処理すべきデータオペレーションを有しているときに、伝送タイプの処理すべきデータオペレーションは、第2のデータオペレーションとして決定され、第2のデータオペレーションは、サーバによるデータ伝送を通じて実行される。第2のデータオペレーションで伝送されるゲームデータは、正規表現規則に従って形成され、ゲームデータは、オペレーション表現または論理オペレーションを含む。
【０１５０】
少なくとも1つの処理すべきデータオペレーションが伝送タイプの処理すべきデータオペレーションを有しているときに、伝送タイプの処理すべきデータオペレーションを第2のデータオペレーションとして決定するステップと、第2のデータオペレーションをサーバによるデータ伝送を通じて実行するステップは、少なくとも1つの処理すべきデータオペレーションが伝送タイプの処理すべきデータオペレーションを有し、ターゲット実行状態が、ユーザオペレーションに従ってローカルクライアントによってトリガされたときに、正規表現規則に従ってユーザオペレーションに対応するオペレーション表現を生成するステップであって、オペレーション表現はユーザオペレーションに関っているターゲット要素オブジェクトのオブジェクト識別子を含む、ステップと、オペレーション表現をサーバに送信し、それにより、サーバはターゲット要素オブジェクトの論理関数を取得し、論理関数に対応する論理式をターゲットクライアントに送信するステップであって、論理式は正規表現規則に従って形成され、論理関数に関連付けられている少なくとも1つの要素オブジェクトのオブジェクト識別子を含む、ステップとを含む。
【０１５１】
少なくとも1つの処理すべきデータオペレーションが伝送タイプの処理すべきデータオペレーションを有しているときに、伝送タイプの処理すべきデータオペレーションを第2のデータオペレーションとして決定するステップと、第2のデータオペレーションをサーバによるデータ伝送を通じて実行するステップは、少なくとも1つの処理すべきデータオペレーションが伝送タイプの処理すべきデータオペレーションを有し、ターゲット実行状態が、サーバによってトリガされたときに、サーバによって送信されたターゲット要素オブジェクトの論理関数に対応する論理式を受信するステップであって、論理式は正規表現規則に従って形成され、論理関数に関連付けられている少なくとも1つの要素オブジェクトのオブジェクト識別子を含む、ステップと、論理ワイルドカード表現内のオブジェクト識別子を解析して、ターゲット要素オブジェクトの論理関数を識別し、論理関数に従ってオペレーションを実行するステップとを含む。
【０１５２】
モバイルゲームの、現在実行のためトリガされている、ターゲット実行状態を取得するステップの前に、この方法は、
【０１５３】
モバイルゲームにおけるすべての要素オブジェクトについてそれぞれ対応するオブジェクト識別子を設定するステップと、要素オブジェクトとオブジェクト識別子との間のマッピング関係を宣言し、正規表現規則を設定するステップであって、それにより、マッピング関係および正規表現規則に従ってオペレーション表現が生成されるか、または論理式がその後解析される、ステップとをさらに含み、ターゲット実行状態にある少なくとも1つの要素オブジェクトは、ローカルクライアントによって監督され、この監督は作成、論理、および削除のうちの少なくとも1つを含む。
【０１５４】
モバイルゲームの、現在実行のためトリガされている、ターゲット実行状態を取得するステップの前に、この方法は、
【０１５５】
モバイルゲームの規則に従って少なくとも1つの実行状態を設定するステップと、各実行状態について少なくとも1つの処理すべきデータオペレーションを構成するステップとをさらに含み、少なくとも1つの状態は、ユーザオペレーションに従ってローカルクライアントによって順次トリガされる少なくとも1つのターゲット実行状態を有するか、または少なくとも1つの状態は、トリガ情報を送信することによってサーバによってトリガされた少なくとも1つのターゲット実行状態を有する。
【０１５６】
モバイルゲームの、現在実行のためトリガされている、ターゲット実行状態を取得するステップの前に、この方法は、
【０１５７】
MVCモデルに基づき関係リスニングキューを設定するステップであって、関係リスニングキューは少なくとも1つの実行状態とすべてのインターフェース関連付け情報との間およびモバイルゲーム内のすべての要素オブジェクトとすべてのインターフェース関連付け情報との間のマッピング関係を含み、1つの実行状態は1つのインターフェース関連付け情報に対応し、1つの要素オブジェクトは1つのインターフェース関連付け情報に対応する、ステップをさらに含み、モバイルゲームのローカルクライアント側で第1のデータオペレーションを実行するステップは、特に、プリセットされた関係リスニングキューに従って、ターゲット実行状態とのマッピング関係を有するインターフェース関連付け情報および/またはターゲット要素オブジェクトとのマッピング関係を有するインターフェース関連付け情報を取得するステップと、取得されたインターフェース関連付け情報をローカルクライアントのユーザインターフェースに表示するステップとを含み、ターゲット要素オブジェクトはターゲット実行状態でトリガされる要素オブジェクトである。
【０１５８】
当業者であれば、前述の実施形態の方法のステップの全部または一部が関連するハードウェアに指令するプログラムによって実装され得ることを理解し得る。プログラムは、コンピュータ可読記憶媒体に記憶され得る。プログラムは、実行されたときの方法の実施形態のプロセスを含むものとしてよい。記憶媒体は、磁気ディスク、光ディスク、リードオンリーメモリ(ROM)、ランダムアクセスメモリ(RAM)、または同様のものであってよい。
【０１５９】
上で開示されている内容は、本発明の単に好ましい実施形態にすぎず、本開示の範囲を制限するために使用され得ないことは当然である。したがって、本開示の請求項に従ってなされる同等の変更は、なおも本開示の対象となる範囲に属す。
【符号の説明】
【０１６０】
1  データ処理装置
10  状態取得モジュール
20  探索モジュール
30  第1の決定および実行モジュール
40  第1の設定モジュール
50  第2の設定モジュール
60  第3の設定モジュール
70  第2の決定および実行モジュール
701  生成ユニット
702  送信ユニット
703  受信ユニット
704  解析および識別ユニット
1001  プロセッサ
1002  通信バス
1003  ユーザインターフェース
1004  ネットワークインターフェース
1005  メモリ
【図１】
0006755527.tif 000002
【図１ａ】
0006755527.tif 000003
【図２】
0006755527.tif 000004
【図３】
0006755527.tif 000005
【図４】
0006755527.tif 000006
【図５】
0006755527.tif 000007
【図６】
0006755527.tif 000008
【図７】
0006755527.tif 000009