(57)【要約】【課題】本発明の実施形態では、エミュレータ類ゲームのキャラクター削除方法、装置及びシステムを提出する。【解決手段】当該方法は、エミュレータ類ゲームに削除しようとするキャラクターが存在すると判定された場合、ゲームの当面実行情報を保存し、キャラクター削除関数を呼び出して削除しようとするキャラクターを削除するステップと、保存されたゲームの当面実行情報をアップロードして、エミュレータ類ゲームを続いて実行させるステップと、を含む。  本発明の実施形態において、エミュレータは、ゲームの当面実行情報を保存し、キャラクター削除関数を呼び出すことで、ゲームプログラムのスタックデータ及びプログラムポインタなどデータを修正して、ゲームの実行プロセスを制御する目的を達する。更に、ゲームプレーヤーがいつでもゲームから退出でき、残ったプレーヤーが影響を受けず続いてゲームできるように保障する。【選択図】図１
2015502781.tif 000002
【特許請求の範囲】
【請求項１】
エミュレータ類ゲームに削除しようとするキャラクターが存在すると判定された場合、ゲームの当面実行情報を保存し、キャラクター削除関数を呼び出して前記削除しようとするキャラクターを削除するステップと、
保存されたゲームの当面実行情報をアップロードして、前記エミュレータ類ゲームを続いて実行させるステップと、を含むことを特徴とするエミュレータ類ゲームのキャラクター削除方法。
【請求項２】
前記キャラクター削除関数を呼び出して前記削除しようとするキャラクターを削除するステップは、
削除しようとするキャラクターの識別子を前記エミュレータ類ゲームのスタックデータに記憶するステップと；
前記エミュレータ類ゲームのプログラムポインタを修正して、前記キャラクター削除関数を実行させるステップと、を含み、
その中で、前記キャラクター削除関数は、前記スタックデータに記憶されている削除しようとするキャラクターの識別子を呼び出してパラメータとし、前記削除しようとするキャラクターの識別子に対応するキャラクターを削除することを特徴とする請求項１に記載のエミュレータ類ゲームのキャラクター削除方法。
【請求項３】
前記キャラクター削除関数を呼び出して前記削除しようとするキャラクターを削除するステップは、
予め確定された記憶アドレスに削除しようとするキャラクターの識別子を記憶するステップと、
前記エミュレータ類ゲームのプログラムポインタを修正して、前記キャラクター削除関数を実行させるステップと、を含み、
その中で、前記キャラクター削除関数は前記予め確定された記憶アドレスをアクセスして前記削除しようとするキャラクターの識別子を取得し、前記削除しようとするキャラクターの識別子に対応するキャラクターを削除することを特徴とする請求項１に記載のエミュレータ類ゲームのキャラクター削除方法。
【請求項４】
ゲームに削除しようとするキャラクターが存在すると判定した後、前記方法は、ゲームの実行状態によってキャラクター削除操作をすぐに行うか否かを判断するステップを更に含み、
キャラクター削除操作をすぐに行う場合、プロセスを続き、
キャラクター削除操作をすぐに行わない場合、プロセスから退出することを特徴とする請求項１に記載のエミュレータ類ゲームのキャラクター削除方法。
【請求項５】
前記ゲームの実行状態によってキャラクター削除操作をすぐに行うか否かを判断するステップは、
キャラクター削除関数がすぐに実行可能であるか否かを判断するステップ及び/又は
ミッション完了のアニメーションが放映されているか否かを判断するステップ
を含むことを特徴とする請求項4に記載のエミュレータ類ゲームのキャラクター削除方法。
【請求項６】
前記キャラクター削除関数は、キャラクター血液量控除関数、キャラクター生命数量控除関数及びキャラクターを死亡させる関数の中の少なくとも１つを含むことを特徴とする請求項1乃至請求項5の何れか一項に記載のエミュレータ類ゲームのキャラクター削除方法。
【請求項７】
前記エミュレータ類ゲームに削除しようとするキャラクターが存在すると判定するステップは、具体的に、
キャラクター状態データが非活性であるキャラクターが存在すると判定した場合、前記エミュレータ類ゲームに削除しょうとするキャラクターが存在すると判定するステップを含むことを特徴とする請求項1乃至請求項5の何れか一項に記載のエミュレータ類ゲームのキャラクター削除方法。
【請求項８】
前記エミュレータ類ゲームは、アーケードゲーム対戦Arcliveプラットフォーム、SupARCプラットフォーム又はARCプラットフォームで実行されることを特徴とする請求項1乃至請求項5の何れか一つに記載のエミュレータ類ゲームのキャラクター削除方法。
【請求項９】
エミュレータ類ゲームのキャラクター削除装置にあって、
前記装置は、ゲーム当面実行情報保存ユニットと、キャラクター削除ユニットと、ゲーム情報アップロードユニットとを含み、
その中で、ゲーム当面実行情報保存ユニットは、エミュレータ類ゲームに削除しようとするキャラクターが存在すると判定された場合、ゲームの当面実行情報を保存し、
キャラクター削除ユニットは、キャラクター削除関数を呼び出して前記削除しようとするキャラクターを削除し、
ゲーム情報アップロードユニットは、保存されたゲームの当面実行情報をアップロードして、前記エミュレータ類ゲームを続いて実行させることを特徴とするエミュレータ類ゲームのキャラクター削除装置。
【請求項１０】
キャラクター削除ユニットは、削除しようとするキャラクターの識別子を前記エミュレータ類ゲームのスタックデータに記憶し、前記エミュレータ類ゲームのプログラムポインタを修正して、前記キャラクター削除関数を実行させ、
その中で、前記キャラクター削除関数は、前記スタックデータに記憶されている削除しようとするキャラクターの識別子を呼び出してパラメータとし、前記削除しようとするキャラクターの識別子に対応するキャラクターを削除することを特徴とする請求項9に記載のエミュレータ類ゲームのキャラクター削除装置。
【請求項１１】
前記装置は、ゲーム状態判断ユニットを更に含み、
ゲーム状態判断ユニットは、ゲーム当面実行情報保存ユニットによりゲームに削除しようとするキャラクターが存在すると判定された場合、ゲームの実行状態によってキャラクター削除操作をすぐに行うか否かを判断し、
キャラクター削除操作をすぐに行う場合、ゲーム当面実行情報保存ユニットにゲームの当面実行情報を保存させ、
キャラクター削除操作をすぐに行わない場合、このまま再びトリガーされるのを待つことを特徴とする請求項9に記載のエミュレータ類ゲームのキャラクター削除装置。
【請求項１２】
ゲーム状態判断ユニットは、キャラクター削除関数がすぐに実行可能であるか否か及び/又はミッション完了のアニメーションを放映しているか否かを判断することで、キャラクターをすぐに削除するか否かを判断することを特徴とする請求項11に記載のエミュレータ類ゲームのキャラクター削除装置。
【請求項１３】
前記キャラクター削除関数は、キャラクター血液量控除関数、キャラクター生命数量控除関数及びキャラクターを死亡させる関数の中の少なくとも１つを含むことを特徴とする請求項9乃至請求項12の何れか一項に記載のエミュレータ類ゲームのキャラクター削除装置。
【請求項１４】
前記ゲーム当面実行情報保存ユニットは、キャラクター状態データが非活性であるキャラクターが存在すると判定した場合、ゲームに削除しようとするキャラクターが存在すると判定することを特徴とする請求項9乃至請求項12の何れか一項に記載のエミュレータ類ゲームのキャラクター削除装置。
【請求項１５】
エミュレータ類ゲームのキャラクター削除システムであって、
前記システムは、エミュレータとエミュレータ類ゲーム記憶ユニットとを含み、
その中で、エミュレータ類ゲーム記憶ユニットは、エミュレータ類ゲームプログラムの命令を保存し、
エミュレータは、エミュレータ類ゲーム記憶ユニットにより保存されたエミュレータ類ゲームプログラムの命令を識別可能な命令に変換し、前記識別可能な命令を実行させて前記エミュレータ類ゲームを実行させ、
前記エミュレータは、ゲーム当面実行情報保存ユニットと、キャラクター削除ユニットと、ゲーム情報アップロードユニットとを更に含み、
ゲーム当面実行情報保存ユニットは、前記エミュレータ類ゲームに削除しようとするキャラクターが存在すると判定された場合、ゲームの当面実行情報を保存し、
キャラクター削除ユニットは、キャラクター削除関数を呼び出して前記削除しようとするキャラクターを削除し、
ゲーム情報アップロードユニットは、保存されたゲームの当面実行情報をアップロードして、前記エミュレータ類ゲームを続いて実行させることを特徴とするエミュレータ類ゲームのキャラクター削除システム。
【請求項１６】
キャラクター削除ユニットは、削除しようとするキャラクターの識別子を前記エミュレータ類ゲームのスタックデータに記憶し、前記エミュレータ類ゲームのプログラムポインタを修正して、前記キャラクター削除関数を実行させ、
その中で、前記キャラクター削除関数は、前記スタックデータに記憶されている削除しようとするキャラクターの識別子を呼び出してパラメータとし、前記削除しようとするキャラクターの識別子に対応するキャラクターを削除することを特徴とする請求項15に記載のエミュレータ類ゲームのキャラクター削除システム。
【請求項１７】
前記エミュレータは、ゲーム状態判断ユニットを更に含み、
ゲーム状態判断ユニットは、ゲーム当面実行情報保存ユニットにより、ゲームに削除しようとするキャラクターが存在すると判定された場合、ゲームの実行状態によってキャラクター削除操作をすぐに行うか否かを判断し、
キャラクター削除操作をすぐに行う場合、ゲーム当面実行情報保存ユニットにゲームの当面実行情報を保存させ、
キャラクター削除操作をすぐに行わない場合、このまま再びトリガーされるのを待つことを特徴とする請求項15に記載のエミュレータ類ゲームのキャラクター削除システム。
【請求項１８】
器機により読み取り可能な媒体であって、命令集合が記憶されており、
前記命令集合が実行されると、前記器機に請求項1乃至請求項8の何れか一項に記載の方法を実行させることを特徴とする器機により読み取り可能な媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本願は、2012年4月5日付けに中国特許局に提出し、出願番号が201210097117.7である(発明の名称は「エミュレータ類ゲームのキャラクター削除方法、装置及びシステム」である)中国特許出願の優先権を主張し、その全ての内容を本願に引用を持って組み込む。
【０００２】
本発明の実施形態は、電子ゲームの技術分野に関し、具体的には、エミュレータ類ゲームのキャラクター削除方法、装置及びシステムに関する。
【背景技術】
【０００３】
電子ゲームは、更にテレビゲームとも呼ばれ、人が電子設備(例えば、コンピューター、ゲーム機など)を通じてゲームするエンターテインメントである。
【０００４】
コンピューター技術とネットワーク技術の急速な発展とともに、人の日常生活、勉強及び仕事でインターネット(Internet)の役割はますます大きくなっている。ゲーム対戦プラットフォームは、インターネットの使用者にマルチプレイコンピュータゲームのオンラインサービスを提供して、インターネット中のゲームプレーヤーが、まるで同一のローカル・エリア・ネットワーク(LAN)に位置しているように、インターネットを通じて簡単にゲームできるようにする。ゲーム対戦プラットフォームは、ネットワークプロトコル変換技術を通じて、遠く離れているプレーヤーをインターネットで緊密につながり、更に、プレーヤーにリアルタイムで交流及び相談できる手段を提供する。LANでオンラインできるあらゆるゲームは、全て、別途のサーバーを必要せず、又、複雑なIPアドレスを記憶する必要せず、ゲーム対戦プラットフォーム上でLAN方式でプレイでき、プレーヤーは、便利に他の人と一緒にゲームできる。ゲーム対戦プラットフォーム上の各部屋の全てのプレーヤーは、まるで同一のオンライン領域に位置しているように、みんなでLANを通じて任意に相談したり、他のプレーヤーと一緒にゲームしたり、お互いに学び合ったりして、対戦ゲームの楽を自由に楽しめる。
【０００５】
エミュレータ(Emulator、EMU)は、プログラムであり、元の意味は「シミュレーター(simulator)」である。コンピューター又は他のマルチメディア(multi-media)プラットフォーム(個人用の携帯情報端末、携帯電話)に、他のプラットフォーム上のプログラムを実行させることができる。その多くは、ビデオゲームとアーケードエミュレータ(Arcade emulator)である。エミュレータとは、当該他のプラットフォームプログラム命令を本器機が識別可能な命令に変換して、当該プログラムを実行するソフトウェアである。エミュレーター類ゲームは、エミュレータで実行される本器機のゲーム対戦プラットフォーム上のゲームプログラムではないゲームプログラムである。例えば、目下のArcliveゲームプラットフォーム上で、複数のプレーヤーがオンラインで一緒にゲームでき、ゲーム中にプレーヤーのキャラクターが死亡すると、当該プレーヤーは退出可能で、その他のプレーヤーは続いてゲームできる。
【０００６】
しかし、従来技術において、複数のプレーヤーがエミュレータを通じて一緒にゲームする場合、あるプレーヤーが自分のキャラクターが死亡しない状況でゲームから退出すると、ゲーム全体が終了され、他のプレーヤーもゲームを続けることができない。このような状況になった主な原因は、従来技術において、ゲーム対戦プラットフォームは退出したプレーヤーのキャラクターを削除できず、当該キャラクターがゲームに残ると他のプレーヤーに負の影響を与えるので、従来技術のゲーム対戦プラットフォームでは簡単で乱暴的にゲームを直接に終了するが、このような処理方式によって、他のプレーヤーはゲームを続けることができなくなる。
【発明の概要】
【０００７】
本発明の実施形態では、エミュレータ類ゲームのキャラクター削除方法を提出し、ゲームプレーヤーがゲームから退出しても、残ったプレーヤーが影響を受けず続いてゲームできるように実現している。
【０００８】
本発明の実施形態では、エミュレータ類ゲームのキャラクター削除装置を更に提出し、ゲームプレーヤーがゲームから退出しても、残ったプレーヤーが影響受けず続いてゲームできるように実現している。
【０００９】
本発明の実施形態では。エミュレータ類ゲームのキャラクター削除システムを更に提出し、ゲームプレーヤーがゲームから退出しても、残ったプレーヤーが影響を受けず続いてゲームできるように実現している。
【００１０】
本発明の実施形態の具体的な方案は以下のようである。
【００１１】
エミュレータ類ゲームのキャラクター削除方法であって、エミュレータ類ゲームに削除しようとするキャラクターが存在すると判定された場合、ゲームの当面実行情報を保存し、キャラクター削除関数を呼び出して前記削除しようとするキャラクターを削除するステップと、保存されたゲームの当面実行情報をアップロードして、前記エミュレータ類ゲームを続いて実行させるステップと、を含む。
【００１２】
エミュレータ類ゲームのキャラクター削除装置にあって、前記装置は、ゲーム当面実行情報保存ユニットと、キャラクター削除ユニットと、ゲーム情報アップロードユニットとを含み、その中で、ゲーム当面実行情報保存ユニットは、エミュレータ類ゲームに削除しようとするキャラクターが存在すると判定された場合、ゲームの当面実行情報を保存し、キャラクター削除ユニットは、キャラクター削除関数を呼び出して前記削除しようとするキャラクターを削除し、ゲーム情報アップロードユニットは、保存されたゲームの当面実行情報をアップロードして、前記エミュレータ類ゲームを続いて実行させる。
【００１３】
エミュレータ類ゲームのキャラクター削除システムであって、前記システムは、エミュレータとエミュレータ類ゲーム記憶ユニットとを含み、その中で、エミュレータ類ゲーム記憶ユニットは、エミュレータ類ゲームプログラムの命令を保存し、エミュレータは、エミュレータ類ゲーム記憶ユニットにより保存されたエミュレータ類ゲームプログラムの命令を識別可能な命令に変換し、前記識別可能な命令を実行させて前記エミュレータ類ゲームを実行させ、
当該エミュレータは、ゲーム当面実行情報保存ユニットと、キャラクター削除ユニットと、ゲーム情報アップロードユニットとを更に含み、ゲーム当面実行情報保存ユニットは、前記エミュレータ類ゲームに削除しようとするキャラクターが存在すると判定された場合、ゲームの当面実行情報を保存し、キャラクター削除ユニットは、キャラクター削除関数を呼び出して前記削除しようとするキャラクターを削除し、ゲーム情報アップロードユニットは、保存されたゲームの当面実行情報をアップロードして、前記エミュレータ類ゲームを続いて実行させる。
【００１４】
本発明の実施形態では、器機により読み取り可能な媒体を更に提供し、当該媒体には、命令集合が記憶されており、前記命令集合が実行されると、前記器機に上記の方法を実行させる。
【００１５】
上記の技術案によって、本発明の実施形態において、エミュレータ類ゲームに削除しようとするキャラクターが存在すると判定された場合、ゲームの当面実行情報を保存し、キャラクター削除関数を呼び出して削除しようとするキャラクターを削除し、その後、保存されたゲームの当面実行情報をアップロードして、エミュレータ類ゲームを続いて実行させる。したがって、本発明の実施形態を適用した後、エミュレータは、ゲームの当面実行情報を保存し、キャラクター削除関数を呼び出すことで、ゲームプログラムのスタックデータ及びプログラムポインタなどのデータを修正して、ゲームの実行プロセスを制御する目的を達することができる。更に、ゲームプレーヤーがいつでもゲームから退出でき、残ったプレーヤーが影響を受けず続いてゲームできるように保障する。
【図面の簡単な説明】
【００１６】
【図１】本発明の実施形態によるエミュレータ類ゲームのキャラクター削除方法のフローチャートである。
【図２】本発明の実施形態によるエミュレータ類ゲームの例示的なキャラクター削除方法のフローチャートである。
【図３】本発明の実施形態によるエミュレータ類ゲームのキャラクター削除装置の構成図である。
【図４】本発明の実施形態によるエミュレータ類ゲームのキャラクター削除システムの構成図である。
【発明を実施するための形態】
【００１７】
本発明の技術案とメリットをより明確にするために、以下、図面を参照して本発明に対して更に詳細な説明を行う。
【００１８】
本発明の実施形態において、エミュレータ類ゲームはエミュレータにより実行され、エミュレータは、ゲームプログラムの実行プロセスとデータを制御できるので、エミュレータの操作に基づいて、キャラクターの削除を制御することができる。
【００１９】
エミュレータは、ゲームプログラムのメーカーから、ゲームの正常的なプロセスにおけるキャラクターの削除に関連する情報(例えば、キャラクターの血液量控除、キャラクターの生命数量の控除及びキャラクターの死亡などに関連する関数のアドレスとパラメータであり、ゲーム状態とキャラクター状態のデータのアドレスを示す)などを把握した後に、このような情報に基づいてキャラクターの削除操作を実行する。
【００２０】
図1は本発明の実施形態によるエミュレータ類ゲームのキャラクター削除方法のフローチャートである。図1に示すように、当該方法は以下のようなステップを含む。
【００２１】
ステップ101において、エミュレータ類ゲームに削除しようとするキャラクターが存在すると判定された場合、ゲームの当面実行情報を保存し、キャラクター削除関数を呼び出して、前記削除しようとするキャラクターを削除する。
【００２２】
ここで、エミュレータがゲームプログラムの命令を循環して実行する場合、当面において、削除しようとするキャラクターが存在するか否かを判断する必要がある。当面において削除しようとするキャラクターが存在するか否かを判断する場合、エミュレータは、一般的に、ゲームプログラムのメーカーからのゲーム情報に基づいて、ゲームのデータ領域をアクセスして、関連アドレスの数値が要求に合致するか否かを調べる。例えば、エミュレータはゲームのサーバーにアクセスして、ゲームのサーバーにキャラクター状態が非活性であるキャラクターが存在するか否かを判断することで、当面において削除しようとするキャラクターが存在するか否かを判断する。その中で、エミュレータによりゲームのサーバーにキャラクター状態データが非活性であるキャラクターが存在すると判定された場合、エミュレータ類ゲームに削除しょうとするキャラクターが存在すると判定する。
【００２３】
1つの実施形態において、キャラクター削除関数を呼び出して削除しようとするキャラクターを削除するステップは、まず、削除しようとするキャラクターの識別子をエミュレータ類ゲームのスタックデータに記憶するステップと；その後、エミュレータ類ゲームのプログラムポインタを修正して、当該キャラクター削除関数を実行させるステップと、を含む。キャラクター削除関数は、スタックデータに記憶されている削除しようとするキャラクターの識別子を呼び出してパラメータとし、当該削除しようとするキャラクターの識別子に対応するキャラクターを削除する。
【００２４】
ゲームのスタックデータは、コンパイラにより、必要な場合に自動的に割り当てられて給付され、必要ではない場合に自動的に削除される変数記憶領域である。ゲームのスタックデータは、主に臨時の変数、パラメータの渡し届け、及び関数リターンアドレスの記憶に使用される。ゲームのプログラムポインタは次に実行される命令のアドレスを指す。
【００２５】
削除の必要があるキャラクターの識別子がパラメータによって関連のキャラクター削除関数に渡されると、スタックデータ又はレジスタ(Register)の形態で当該パラメータを記憶し、且つ当該パラメータを関連する関数に渡すことができる。
【００２６】
パラメータではない形態によって関連のキャラクター削除関数に渡されると、関連のキャラクター削除関数は、まず、削除の必要があるキャラクターの識別子の具体的な記憶アドレスを取得し、その後、当該アドレスに対応する記憶値を削除する必要があるキャラクターの識別子とする。具体的には、まず、予め確定された記憶アドレスに削除しようとするキャラクターの識別子を記憶し、その後、エミュレータ類ゲームのプログラムポインタを修正して、キャラクター削除関数を実行させる。その中で、キャラクター削除関数は当該予め確定された記憶アドレスをアクセスして、削除しようとするキャラクターの識別子を取得し、当該削除しようとするキャラクターの識別子に対応するキャラクターを削除する。
【００２７】
ゲーム中には、複数のプレーヤーのキャラクターを削除する必要がある場合もあり、その場合、削除しようとするキャラクターの識別子が多数であるのが望ましい。しかも、キャラクターを削除するには、複数のゲームプログラム中の関数を呼び出してこそ、目的に達することができるので、キャラクター削除ステップを何回も繰り返すことがある。
【００２８】
具体的なゲームプログラム及び応用環境によって、キャラクター削除関数は、キャラクター血液量控除関数、キャラクター生命数量控除関数及びキャラクターを死亡させる関数などの中の少なくとも１つの関数を含む。
【００２９】
ステップ102において、保存されたゲームの当面実行情報をアップロードして、前記エミュレータ類ゲームを続いて実行させる。
【００３０】
ここで、キャラクター削除関数の実行が完了して戻った場合、一般的に、キャラクターは既に削除されている。この場合、保存されたゲームの当面実行情報をアップロードすることで、エミュレータ類ゲームを続いて実行させることができる。具体的に、直前のゲームプログラムのスタックデータ及びプログラムポインタなどのデータを回復して、ゲームプログラムを続いて正常に実行させることができる。
【００３１】
あるゲームの状態において、削除しようとするキャラクターが存在すると判定した後に、すぐにキャラクター削除操作を実行するのは適切ではない場合がある。例えば、ゲームが、既にミッションを完了して、ミッション完了のアニメージョンが放映されている場合、又はキャラクター削除関数がすぐに実行できない場合は、キャラクター削除操作をすぐに実行するのではなく、ミッション完了のアニメージョンの放映が終了するまで待つか、又はキャラクター削除関数が実行可能な場合に、相応的なキャラクター削除操作を実行するのが当然である。
【００３２】
エミュレータ類ゲームに削除しようとするキャラクターが存在すると判定した後に、更にゲームの実行状態によってキャラクター削除操作をすぐに行うか否かを判断するのが望ましい。すぐに行う場合に、101ステップおよび後続の102ステップを続いて行い、そうではない場合、当該プロセスから退出する。
【００３３】
その中で、ゲームプログラムのメーカーからの情報に基づいて、関連するゲームのデータ領域にアクセスし、関連アドレスの数値を調べ、当面のゲーム状態がキャラクターを削除可能な状態であるか否かを判断することができる。ゲーム状態がキャラクター削除条件を満たす場合、ゲームプログラムのメーカーからの資料に基づいて、まず、当面のスタックデータ及びプログラムポインタのデータをバックアップし、その後、当面のゲームプログラムのスタックデータ(通常は、呼び出そうとするキャラクターに関連する関数に、適切なパラメータを書き込む。例えば、削除しようとするキャラクターの識別子をパラメータとする)を修正し、次に、当面のプログラムのポインタを修正して、ゲームプログラムにおいてキャラクター削除と関連する関数を呼び出し、当該削除しようとするキャラクターの識別子に対応するキャラクターを削除する。削除しようとするキャラクターが全て削除された後に、直前のゲームプログラムのスタックデータ及びプログラムポインタなどのデータを回復して、ゲームプログラムを続いて正常に実行させる。
【００３４】
図2は本発明の実施形態によるエミュレータ類ゲームの例示的なキャラクター削除方法のフローチャートである。
【００３５】
図2に示すように、当該方法は、以下のようなステップを含む。
【００３６】
ステップ201において、エミュレータは、ゲームプログラムをアップロードする。
【００３７】
ステップ202において、エミュレータは、ゲームプログラムの実行を開始する。
【００３８】
ステップ203において、エミュレータは、ゲームプログラムの命令を循環的に実行する。
【００３９】
ステップ204において、エミュレータは、ゲーム中に削除しようとするキャラクターが存在するか否かを判断し、存在する場合、ステップ205及び後続のステップを実行し、そうではない場合、ステップ203に戻る。ここで、プレーヤーがゲームからの退出を選択すると、当該プレーヤーのキャラクターのキャラクター状態データが非活性になる。したがって、各プレーヤーのキャラクターのキャラクター状態データを判断することで、削除操作を待っているキャラクターが存在するか否かを判断することができる。
【００４０】
ステップ205において、ゲームの実行状態情報に基づいて、当面においてキャラクターの削除条件を満たすか否かを判断し、満たすと、ステップ206及び後続のステップを実行し、そうではない場合、ステップ203に戻る。
【００４１】
ここで、ゲームのある状態において、削除しようとするキャラクターが存在すると判断した後に、キャラクター削除操作をすぐに実行するのは適切ではない場合があるので、ゲームの実行状態情報により、当面においてキャラクターを削除する条件を満たすか否かを判断する。
【００４２】
例えば、ゲームが、既にミッションを完了した状態になって、ミッション完了のアニメージョンが放映されているか、又はキャラクター削除関数がすぐに実行不可能な場合は、キャラクター削除操作をすぐに実行するのではなく、ミッション完了のアニメージョンの放映が終了するまで待つか、又はキャラクター削除関数が実行可能な場合に、相応的なキャラクター削除操作を実行するのが当然である。
【００４３】
ステップ206において、エミュレータは当面のスタックデータ及びプルグラムポインタなどのデータをバックアップし、その後、当面のゲームプログラムのスタックデータ及びプログラムポインタを直接的に修正して、実行プロセスをゲームプログラム中のキャラクター削除関数にジャンプさせる。
【００４４】
ここで、通常、ゲームプログラム中には、キャラクター削除関数が既に保存されており、エミュレータは、当面のスタックデータと及びプログラムポインタなどのデータをバックアップした後に、このようなキャラクター削除関数を呼び出して、キャラクターの削除を実現することができる。
【００４５】
ステップ207において、全てのキャラクターが全部削除された後、ステップ206でバックアップした当面のスタックデータおよびプログラムポインタを回復して、ゲームを続ける。
【００４６】
上記のフローを適用した後、エミュレータ類ゲームにおいて、エミュレータ内部で具体的な状態によってゲームプログラムのスタックデータ及びプログラムポインタなどのデータを修正し、且つゲームプログラム中の関数を主動的に呼び出す(又は、ゲームプログラム中のデータを主動的に修正する)ことで、ゲームの実行プロセスを制御する目的を達することができる。そして、ゲームプレーヤーはいつでもゲームから退出でき、残ったプレーヤーは影響を受けず続いてゲームできる。
【００４７】
その中で、エミュレータ類ゲームは、当面に広く流行しているネットワークアーケードゲーム(Arcade game)対戦Arcliveプラットフォーム、SupARCプラットフォーム又はARCプラットフォームなどで実行されることができる。
【００４８】
以上では、ネットワークアーケードゲーム対戦プラットフォームの具体的な実施例を挙げているが、本発明の実施形態はこれに限らないことを、当業者は理解できる。
【００４９】
上記の分析に基づき、本発明の実施形態では、エミュレータ類ゲームのキャラクター削除装置を更に提出する。
【００５０】
図3は本発明の実施形態によるエミュレータ類ゲームのキャラクター削除装置の構成図である。図3に示すように、当該装置は、ゲーム当面実行情報保存ユニット301と、キャラクター削除ユニット302と、ゲーム情報アップロードユニット303とを含む。
【００５１】
その中で、ゲーム当面実行情報保存ユニット301は、エミュレータ類ゲームに削除しようとするキャラクターが存在すると判定された場合、ゲームの当面実行情報を保存する。
【００５２】
キャラクター削除ユニット302は、キャラクター削除関数を呼び出して前記削除しようとするキャラクターを削除する。
【００５３】
ゲーム情報アップロードユニット303は、保存されたゲームの当面実行情報をアップロードして、前記エミュレータ類ゲームを続いて実行させる。
【００５４】
１つの実施形態において、ゲーム当面実行情報保存ユニット301は、キャラクター状態データが非活性であるキャラクターが存在すると判定した場合、ゲームに削除しようとするキャラクターが存在すると判定する。
【００５５】
１つの実施形態において、キャラクター削除ユニット302は、削除しようとするキャラクターの識別子を前記エミュレータ類ゲームのスタックデータに記憶し、且つ前記エミュレータ類ゲームのプログラムポインタを修正して、前記キャラクター削除関数を実行させる。その中で、前記キャラクター削除関数は、前記スタックデータに記憶されている削除しようとするキャラクターの識別子を呼び出してパラメータとし、当該削除しようとするキャラクターの識別子に対応するキャラクターを削除する。
【００５６】
１つの実施形態において、当該装置は、ゲーム状態判断ユニット304を更に含む。
【００５７】
ゲーム状態判断ユニット304は、ゲーム当面実行情報保存ユニット301により、ゲームに削除しようとするキャラクターが存在すると判定された場合に、ゲームの実行状態によってキャラクター削除操作をすぐに行うか否かを判断する。そして、すぐに行う場合に、ゲーム当面実行情報保存ユニットにゲームの当面実行情報を保存させ、そうではない場合、このまま再びトリガーされるのを待つ。
【００５８】
ゲーム状態判断ユニット304は、キャラクター削除関数がすぐに実行可能であるか否か及び/又はミッション完了のアニメージョンが放映されているか否かを判断することによって、キャラクターをすぐに削除するか否かを判断するのが望ましい。
【００５９】
そして、具体的に、キャラクター削除関数は、キャラクター血液量控除関数、キャラクター生命数量控除関数及びキャラクターを死亡させる関数などの中の少なくとも１つを含む。
【００６０】
本発明の実施形態では、エミュレータ類ゲームのキャラクター削除システムを更に提出する。
【００６１】
図4は本発明の実施形態によるエミュレータ類ゲームのキャラクター削除システムの構成図である。図4に示すように、当該システムは、エミュレータ401と、エミュレータ類ゲーム記憶ユニット402とを含む。
【００６２】
エミュレータ類ゲーム記憶ユニット402は、エミュレータ類ゲームプログラムの命令を保存する。具体的に、プログラムの命令は、プログラムポインタとスタックポインタを含むことができる。
【００６３】
エミュレータ401は、エミュレータ類ゲーム記憶ユニット402により保存されたエミュレータ類ゲームプログラムの命令を識別可能な命令に変換し、当該識別可能な命令を実行させて前記エミュレータ類ゲームを実行させる。
【００６４】
当該エミュレータ401は、図3に示したエミュレータ類ゲームのキャラクター削除装置と同様な構造を有してもよい。
【００６５】
具体的に、エミュレータ401は、ゲーム当面実行情報保存ユニットと、キャラクター削除ユニットと、ゲーム情報アップロードユニットとを更に含む。その中で、ゲーム当面実行情報保存ユニットは、前記エミュレータ類ゲームに削除しようとするキャラクターが存在すると判定された場合、ゲームの当面実行情報を保存する。キャラクター削除ユニットは、キャラクター削除関数を呼び出して前記削除しようとするキャラクターを削除する。ゲーム情報アップロードユニットは、保存されたゲームの当面実行情報をアップロードして、前記エミュレータ類ゲームを続いて実行させる。
【００６６】
具体的に、エミュレータ401中のキャラクター削除ユニットは、削除しようとするキャラクターの識別子を前記エミュレータ類ゲームのスタックデータに記憶し、且つ前記エミュレータ類ゲームのプログラムポインタを修正して、前記キャラクター削除関数を実行させる。その中で、前記キャラクター削除関数は前記スタックデータ中の削除しようとするキャラクターの識別子を呼び出してパラメータとし、当該削除しようとするキャラクターの識別子に対応するキャラクターを削除する。
【００６７】
当該エミュレータ401はゲーム状態判断ユニットを更に含むのが望ましい。ゲーム状態判断ユニットは、ゲーム当面実行情報保存ユニットにより、ゲームに削除しようとするキャラクターが存在すると判定された場合、ゲームの実行状態によってキャラクター削除操作をすぐに行うか否かを判断する。そして、すぐに行う場合に、ゲーム当面実行情報保存ユニットにゲームの当面実行情報を保存させ、そうではない場合、このままで再びトリガーされるのを待つ。
【００６８】
上記のように、本発明の実施形態において、エミュレータ類ゲームに削除しようとするキャラクターが存在すると判定された場合、ゲームの当面実行情報を保存し、キャラクター削除関数を呼び出して削除しようとするキャラクターを削除し、その後、保存されたゲームの当面実行情報をアップロードして、エミュレータ類ゲームを続いて実行させる。これにより、本発明の実施形態を適用した後、エミュレータはゲームの当面実行情報を保存し、キャラクター削除関数を呼び出しすことで、ゲームプログラムのスタックデータ及びプログラムポインタなどのデータを修正して、ゲームの実行プロセスを制御する目的を達することができる。更に、ゲームプレーヤーがいつでもゲームから退出でき、残ったプレーヤーが影響を受けず続いてゲームできるように保障する。
【００６９】
上記の各実施例に対する説明により、本発明をソフトウェアとハードウェアプラットフォームを結合する形態で実現してもよく、ハードウェアにより実現してもよいが、多数の状況において、前者がより優れた実施形態であることは、当業者には明確なことである。
【００７０】
本発明の技術案において、実質的に、又は従来技術に貢献のある部分は、ソフトウェア製品の形式で具現され、当該コンピューターソフトウェア製品の命令集合は、器機により読み取り可能な媒体(例えば、コンピューターのフロッピーディスク、ハードディスク又はコンパクトディスク(Compact Disc)など)に記録され、上記方法を含む幾つかの命令は機器により読み出されて実行される。当該機器は、例えば、端末設備(携帯電話、パソコン、サーバー又はネットワーク設備など)であってもよい。当該命令集合が実行される場合、当該器機に、本発明の上記各実施例で説明した方法を実行させ、且つ実現された機能と技術的効果は類似するので、ここではその説明を省略する。
【００７１】
上記に説明したのは、本発明の好適な実施例であり、本発明の保護範囲を限定するものではない。本発明の精神と原則内で行ったあらゆる修正、同等な取替え、改善などは、全部、本発明の保護範囲内に含まれるべきである。
【図１】
2015502781.tif 000003
【図２】
2015502781.tif 000004
【図３】
2015502781.tif 000005
【図４】
2015502781.tif 000006
【国際調査報告】
2015502781.tif 000007
2015502781.tif 000008
2015502781.tif 000009
2015502781.tif 000010