以下、本実施形態について説明する。なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また本実施形態で説明される構成の全てが、本発明の必要構成要件であるとは限らない。
1.ゲームシステム
図1は、本実施形態のゲームシステム(ネットワークシステム)を示す。本実施形態では、複数の端末10とサーバ20(サーバシステム)とによって構成される。つまり、図1に示すように、本実施形態のゲームシステムは、サービスを提供するサーバ20と、端末10とが、ネットワーク(例えば、インターネット)に接続可能に構成される。
サーバ20は、複数のユーザ(プレーヤ)間でコミュニケーションを提供することが可能なサービスを提供する情報処理装置であり、本実施形態ではSNS(ソーシャル・ネットワーキング・サービス)と呼ばれるコミュニティ型のサービスを提供するサーバである。つまり、サーバ20は、ユーザの情報(ユーザ名、日記、掲示情報、ゲームフィールドの状況など)をログインしたユーザだけでなく、当該ユーザとフレンド関係にある他のユーザにも送信し、ユーザ間でコミュニケーションを図るようにしている。サーバ20は、会員登録を行ったユーザに限定してサービスを提供するようにしてもよい。サーバ20は、1又は複数のサーバ(認証サーバ、ゲーム処理サーバ、通信サーバ、課金サーバ、データベースサーバ等)により構成してもよい。
また、本実施形態のサーバ20は、端末10からの要求に応じて、オンラインゲームサービス(ソーシャルゲーム)を提供する。本実施形態では、端末10においてゲームプログラムが実行され、サーバ20では、プレーヤのアカウント情報や、端末10で実行されるゲームのゲーム結果、当該ゲームで使用可能なゲーム媒体(キャラクタ、アイテム等)、当該ゲームで使用可能なゲーム内通貨などの情報、当該ゲームを構成するステージに関する情報等が管理される。
端末10は、携帯端末(スマートフォン、携帯電話、携帯型ゲーム機等)、パーソナル
コンピュータ(PC)、ゲーム装置、画像生成装置などの情報処理装置であり、インターネット(WAN)、LANなどのネットワークを介してサーバ20に接続可能な装置である。なお、端末10とサーバ20との通信回線は、有線でもよいし無線でもよい。
2.構成
2.1 端末の構成
図2に本実施形態の端末10(ゲーム装置)の機能ブロック図の一例を示す。なお本実施形態の端末は図2の構成要素(各部)の一部を省略した構成としてもよい。
入力部160は、プレーヤからの入力情報を入力(検出)するための機器であり、プレーヤの入力情報を処理部100に出力する。入力部160の機能は、タッチパネル、タッチパッド、マウス、トラックボール、方向キーやボタン、キーボード等の入力機器により実現することができる。例えば、検出部162は、プレーヤの接触入力(接触操作、タッチ操作)を接触検出領域(タッチパネル)から検出する。
記憶部170は、処理部100の各部としてコンピュータを機能させるためのプログラムや各種データを記憶するとともに、処理部100のワーク領域として機能し、その機能はハードディスク、RAMなどにより実現できる。
また、記憶部170は、プレーヤが所有する(プレーヤが使用可能な)キャラクタに関する情報(種類、パラメータ、属性、レベル等)、設定用プレーヤキャラクタとして設定されたキャラクタの設定情報(設定用プレーヤキャラクタとして設定されたキャラクタの設定情報を「デッキ情報」と言い換えてもよい)、プレーヤが所有するアイテムに関する情報、ゲーム内通貨等の情報をプレーヤ情報173として記憶する。
なお、各プレーヤキャラクタには、属性、パラメータ(攻撃力、体力値、形状入力を受け付けるための制限時間等)が設定される。なお、本実施形態において、プレーヤキャラクタは選択対象オブジェクトの一例である(以下同様)。
また、記憶部170は、敵キャラクタに関する情報(パラメータ、属性、レベル等)、ゲームを構成するステージに関する情報、各ステージに出現する敵キャラクタに関する情報等の各種データを記憶する。なお、本実施形態において、敵キャラクタは移動オブジェクトの一例である(以下同様)。
表示部190は、処理部100で生成されたゲーム画像を出力するものであり、その機能は、タッチパネル型ディスプレイ、LCD或いはCRTなどのディスプレイにより実現できる。
音出力部192は、処理部100で生成された音を出力するものであり、その機能は、スピーカ、或いはヘッドフォンなどにより実現できる。
通信部196はサーバ20との間で通信を行うための各種制御を行うものであり、その機能は、各種プロセッサ又は通信用ASICなどのハードウェアや、プログラムなどにより実現できる。
なお、サーバ20が有する情報記憶媒体や記憶部に記憶されているプログラムや各種データを、ネットワークを介して受信し、受信したプログラムやデータを記憶部170に記憶してもよい。このようにプログラムや各種データを受信して端末の処理部100の各部としてコンピュータを機能させる場合も本発明の範囲内に含む。
処理部100(プロセッサ)は、入力部160からの入力情報(操作入力)、プログラム、通信部196を介して受信したデータなどに基づいて、ゲーム処理、画像生成処理、音生成処理、などの処理を行う。処理部100の機能は各種プロセッサ(CPU、DSP等)、ASIC(ゲートアレイ等)などのハードウェアや、プログラムにより実現できる。
処理部100は、設定部110、配置部111、受け付け部112、形成部113、移動オブジェクト制御部114、移動オブジェクト判定部115、ゲーム処理部116、判定部117、パラメータ制御部119、入力判定領域制御部120、表示制御部126、通信制御部128、画像生成部130、音生成部140を含む。
設定部110は、デッキの設定を行う。例えば、設定部110は、デッキに12体のキャラクタをプレーヤキャラクタとして設定する。例えば、12体のうち9体はプレーヤが所有するキャラクタとし、1体はフレンドのキャラクタとし、2体はステージに紐付けられたキャラクタとしてもよい。つまり、設定部110は、プレーヤが所有する(プレーヤが使用可能な)複数のキャラクタのうち、入力部160からの入力情報に基づきプレーヤによって選択された9体のキャラクタをデッキに設定する。なお、デッキとは、ゲームで用いる設定用のプレーヤキャラクタのことを意味する。
配置部111は、配置領域に複数の選択対象オブジェクトと移動オブジェクトとを配置する。具体的には、配置部111は、配置領域に複数のプレーヤキャラクタと敵キャラクタとを配置する。例えば、配置部111は、デッキに設定された12体のプレーヤキャラクタのうち6体のプレーヤキャラクタを配置領域に配置する。
受け付け部112は、入力部160からの入力情報を受け付ける処理を行う。特に、本実施形態の受け付け部112は、接触検出領域においてスライド操作によって入力情報を受け付ける。なお、スライド操作とは、プレーヤが指やタッチペン等でタッチパネルにタッチ(接触)したまま指又はタッチペンを移動して最後にタッチパネルからはなす操作である。また、受け付け部112は、マウス、トラックボールなどの種々のポインティングデバイスにより入力情報を受け付けてもよい。
受け付け部112は、スライド操作等により、入力部160が検出した入力期間中(接触期間中)の入力位置(接触位置)、入力方向(接触方向)、入力量(接触量)を入力情報として取得する。
また、受け付け部112は、タッチパネルから検出された接触位置を入力位置(2次元の指示位置)として受け付ける。受け付け部112は、所定周期(例えば、1/60秒毎)に入力された入力位置を取得する。なお、入力位置は、マウス(入力部の一例)などによって指示された2次元の位置座標としてもよい。かかる場合には、プレーヤがマウスのボタンを押し、そのままの状態でマウスを移動(ドラッグ)させて、マウスのボタンをはなすまでの期間中におけるマウスが移動した位置座標を受け付ける。
特に、本実施形態の受け付け部112は、配置領域に配置された複数の選択対象オブジェクトの中から、位置を連続的に指定する入力(例えば、スライド操作)により、三角形を形成するための複数の選択対象オブジェクトを順に指定する入力を受け付ける。
具体的に説明すると、受け付け部112は、プレーヤキャラクタを指定する指定入力を受け付ける。つまり、受け付け部112は、プレーヤキャラクタの入力判定領域に入力位置を検出した場合に、当該プレーヤキャラクタの指定を順に受け付けてもよい。
また、受け付け部112は、所定の形状を入力するための形状入力を受け付ける。例えば、受け付け部112は、所定数(例えば、3つ)のプレーヤキャラクタを順に指定することにより、所定の形状を形成するための形状入力を受け付けてもよい。
例えば、受け付け部112は、配置領域に配置された複数のプレーヤキャラクタの中から、三角形を形成するための複数のプレーヤキャラクタを順に指定する入力を受け付ける。つまり、受け付け部112は、複数のプレーヤキャラクタの指定及びプレーヤキャラクタの指定順を受け付けるようにしてもよい。
また、受け付け部112は、指定されたプレーヤキャラクタに設定された制限時間内に、形状入力を受け付けるようにしてもよい。例えば、受け付け部112は、判定部117によって最初の1つの形状が形成されたと判定された場合に、制限時間のカウントを開始するようにしてもよい。
また、受け付け部112は、最初に指定されたプレーヤキャラクタの位置を起点とし、当該起点に基づく形状入力を受け付け、判定部117によって最初の1つの形状が形成されたと判定された場合に、制限時間内に起点に基づく形状入力を繰り返し受け付けるようにしてもよい。
また、受け付け部112は、判定部117によって最初の1つの形状が形成されたと判定される前に、形状入力が中断された場合には、中断前に行った形状入力を無効にしてもよい。
形成部113は、形状入力に基づき所定の形状を形成する。例えば、形成部113は、受け付け部112で指定された選択対象オブジェクトの位置を頂点とする三角形を形成する。
つまり、形成部113は、一番目に指定された第1の選択対象オブジェクトと二番目に指定された第2の選択対象オブジェクトと、三番目に指定された第3の選択対象オブジェクトとの位置を頂点とする三角形を形成する。例えば、形成部113は、第1のプレーヤキャラクタ、第2のプレーヤキャラクタ、第3のプレーヤキャラクタの順に指定された当該第1、第2、第3のプレーヤキャラクタの位置を頂点とする三角形を形成する。
また、形成部113は、一番目に指定された第1の選択対象オブジェクトと二番目に指定された第2の選択対象オブジェクトとを結ぶ線と、第1の選択対象オブジェクトと三番目に指定された第3の選択対象オブジェクトとを結ぶ線と、が成す角度が所定角度以下であって、受け付け部112が、第3の選択対象オブジェクトの次に前記第1の選択対象オブジェクトと第2の選択対象オブジェクト以外の四番目に指定された第4の選択対象オブジェクトの指定を受け付けた場合に、第1、第2、第3の選択対象オブジェクトの位置に替えて第1、第3、第4の選択対象オブジェクトの位置を頂点する三角形を形成する。例えば、形成部113は、1番目に指定された第1のプレーヤキャラクタと、2番目に指定された第2のプレーヤキャラクタとを結ぶ線と、第1のプレーヤキャラクタと3番目に指定された第3のプレーヤキャラクタとを結ぶ線と、が成す角度が所定角度以下であって、第3のプレーヤキャラクタの次に第4のプレーヤキャラクタが指定された場合に、第1、第2、第3のプレーヤキャラクタの位置に替えて第1、第3、第4のプレーヤキャラクタの位置を頂点とする三角形を形成する。
また、形成部113は、一番目に指定された第1の選択対象オブジェクトと三番目に指定された第3の選択対象オブジェクトとを結ぶ線上に設定される判定領域内に、二番目に指定された第2の選択対象オブジェクトが存在する場合であって、受け付け部112が、
第3の選択対象オブジェクトの次に前記第1の選択対象オブジェクトと第2の選択対象オブジェクト以外の四番目に指定された第4の選択対象オブジェクトの指定を受け付けた場合に、第1、第2、第3の選択対象オブジェクトの位置に替えて前記第1、第3、第4の選択対象オブジェクトの位置を頂点する三角形を形成してもよい。例えば、形成部113は、一番目に指定された第1のプレーヤキャラクタと三番目に指定された第3のプレーヤキャラクタとを結ぶ線上に設定される判定領域内に、二番目に指定された第2のプレーヤキャラクタが存在する場合であって、受け付け部112が、第3のプレーヤキャラクタの次に第4のプレーヤキャラクタの指定を受け付けた場合に、第1、第2、第3のプレーヤキャラクタの位置に替えて第1、第3、第4のプレーヤキャラクタの位置を頂点する三角形を形成してもよい。
また、形成部113は、一番目に指定された第1の選択対象オブジェクトと二番目に指定された第2の選択対象オブジェクトとを結ぶ線と、第1の選択対象オブジェクトと三番目に指定された第3の選択対象オブジェクトとを結ぶ線と、が成す角度が所定角度以下、かつ、第1の選択対象オブジェクトと第3の選択対象オブジェクトとを結ぶ線上に設定される判定領域内に第2の選択対象オブジェクトが存在する場合であって、受け付け部112が、第3の選択対象オブジェクトの次に第1の選択対象オブジェクトと第2の選択対象オブジェクト以外の四番目に指定された第4の選択対象オブジェクトの指定を受け付けた場合に、第1、第2、第3の選択対象オブジェクトの位置に替えて第1、第3、第4の選択対象オブジェクトの位置を頂点する三角形を形成してもよい。
例えば、形成部113は、一番目に指定された第1のプレーヤキャラクタと二番目に指定された第2のプレーヤキャラクタとを結ぶ線と、第1のプレーヤキャラクタと三番目に指定された第3のプレーヤキャラクタとを結ぶ線と、が成す角度が所定角度以下、かつ、第1のプレーヤキャラクタと第3のプレーヤキャラクタとを結ぶ線上に設定される判定領域内に第2のプレーヤキャラクタが存在する場合であって、受け付け部112が、第3のプレーヤキャラクタの次に第1のプレーヤキャラクタと第2のプレーヤキャラクタ以外の四番目に指定された第4のプレーヤキャラクタの指定を受け付けた場合に、第1、第2、第3の選択対象オブジェクトの位置に替えて第1、第3、第4のプレーヤキャラクタの位置を頂点する三角形を形成してもよい。
移動オブジェクト制御部114は、移動オブジェクトの移動を制御する。例えば、移動オブジェクト制御部114は、最初の選択対象オブジェクトの指定入力が受け付けられたことに応じて、移動オブジェクトの移動速度を遅くし、判定部117によって最初の1つの形状が形成されたと判定された場合に移動オブジェクトを停止させるようにしてもよい。
移動オブジェクト制御部114は、敵キャラクタ制御部114aを含む。敵キャラクタ制御部114aは、敵キャラクタの移動を制御する。例えば、敵キャラクタ制御部114aは、最初のプレーヤキャラクタの指定入力が受け付けられたことに応じて、敵キャラクタの移動速度を遅くし、判定部117によって最初の1つの形状が形成されたと判定された場合に敵キャラクタを停止させるようにしてもよい。
移動オブジェクト判定部115は、形成された形状の領域内に移動オブジェクトが存在しているか否かを判定する。例えば、移動オブジェクト判定部115は、形成された三角形の領域内に移動オブジェクトが存在しているか否かを判定する。
移動オブジェクト判定部115は、敵キャラクタ判定部115aを含む。敵キャラクタ判定部115aは、形成された形状の領域内に敵キャラクタが存在しているか否かを判定する。例えば、敵キャラクタ判定部115aは、形成された三角形の領域内に敵キャラク
タが存在しているか否かを判定する。
ゲーム処理部116は、ゲーム処理を行う。例えば、ゲーム処理部116は、移動オブジェクト判定部115による判定結果に基づいて、所定のゲーム処理を行う。
また、ゲーム処理部116は、ゲームの進捗度(例えば、ログイン回数、ゲームのプレイ回数、前回ログインしてから再度ログインするまでの時間、クリアしたゲームのステージ数、時間経過)に基づいて、プレーヤに新たなプレーヤキャラクタを付与するか否かを判断してもよい。
また、ゲーム処理部116は、対戦処理部116aを含む。対戦処理部116aは、プレーヤキャラクタと敵キャラクタとが対戦するゲーム処理を行う。例えば、対戦処理部116aは、デッキに(設定用プレーヤキャラクタとして)設定されたプレーヤキャラクタと、プレーヤによって選択されたステージに出現する敵キャラクタとの対戦を実行し、対戦結果に基づきステージをクリアしたか否かを判定するゲーム処理を行う。
特に、本実施形態の対戦処理部116aは、形成された形状(例えば、三角形)の領域内に敵キャラクタが存在している場合に、形成された三角形の各頂点に対応するプレーヤキャラクタが当該敵キャラクタを攻撃する処理を行う。つまり、対戦処理部116aは、指定されたプレーヤキャラクタが敵キャラクタを攻撃する処理を行う。
判定部117は、形状入力に基づき所定の形状(例えば、三角形)が形成されたか否かを判定する。
パラメータ制御部119は、プレーヤキャラクタ及び敵キャラクタの少なくとも一方のパラメータ(体力値、攻撃力などのゲームパラメータ)を制御する。
例えば、パラメータ制御部119は、形成された形状の面積に応じてプレーヤキャラクタの攻撃力及び敵キャラクタの攻撃力の少なくとも一方を変動させるようにしてもよい。
また、パラメータ制御部119は、形成された形状の辺の長さの合計値(例えば、形成された形状の各辺の長さの合計値)に応じてプレーヤキャラクタの攻撃力及び敵キャラクタの攻撃力の少なくとも一方を変動させるようにしてもよい。
また、パラメータ制御部119は、形成された形状の種類に応じてプレーヤキャラクタの攻撃力及び敵キャラクタの攻撃力の少なくとも一方を変動させるようにしてもよい。
また、パラメータ制御部119は、複数の形状が形成された場合であって当該複数の形状が重複する領域に敵キャラクタが存在する場合に、プレーヤキャラクタの攻撃力及び敵キャラクタの攻撃力の少なくとも一方を変動させるようにしてもよい。例えば、パラメータ制御部119は、複数の形状が形成された場合であって当該複数の形状が重複する領域に敵キャラクタが存在する場合に、プレーヤキャラクタの攻撃力を増加させるようにしてもよい。
なお、パラメータ制御部119は、一のキャラクタ(ベースキャラクタ)に他のキャラクタ(素材キャラクタ)を合成する処理を行ってもよい。つまり、合成によりプレーヤが所有するキャラクタ数を減らし、ベースキャラクタのパラメータを増加(強化)させてもよい。
入力判定領域制御部120は、選択対象オブジェクト毎に、選択対象オブジェクトの位
置に基づく当該選択対象オブジェクトの入力判定領域を設定する。例えば、入力判定領域制御部120は、プレーヤキャラクタ毎に、プレーヤキャラクタの位置に基づく当該プレーヤキャラクタの入力判定領域を設定する。
また、入力判定領域制御部120は、直近に指定された選択対象オブジェクトの位置と、他の各選択対象オブジェクトの位置とに基づいて、他の各選択対象オブジェクトの入力判定領域を変形させるようにしてもよい。例えば、入力判定領域制御部120は、直近に指定されたプレーヤキャラクタの位置と、他の各プレーヤキャラクタの位置とに基づいて、当該他の各プレーヤキャラクタの入力判定領域を変形させるようにしてもよい。
また、入力判定領域制御部120は、直近に指定された選択対象オブジェクトの位置と、他の各選択対象オブジェクトの位置とを結ぶ線に沿って、他の各選択対象オブジェクトの入力判定領域を狭めるように変形させるようにしてもよい。例えば、入力判定領域制御部120は、直近に指定されたプレーヤキャラクタの位置と、他の各プレーヤキャラクタの位置とを結ぶ線に沿って、他の各プレーヤキャラクタの入力判定領域を狭めるように変形させるようにしてもよい。
また、表示制御部126は、表示部190にゲーム画面を表示する制御を行う。例えば、表示制御部126は、オブジェクト(プレーヤキャラクタ、敵キャラクタ等のキャラクタ)を表示する制御を行う。
特に、本実施形態の表示制御部126は、配置領域に配置されたプレーヤキャラクタ、敵キャラクタを表示させる。
また、表示制御部126は、体力値が所定値(例えば、0)に到達したプレーヤキャラクタを配置領域から消去してもよい。
通信制御部128は、サーバ20又は他の端末10とネットワークを介して、データを送受信する処理を行う。通信制御部128は、サーバ20又は他の端末10にデータを送信する際には、当該データと共にプレーヤの識別情報(或いは端末の識別情報)を送信し、受信側のサーバ20又は他の端末10において、いずれのプレーヤ(端末)に関するデータであるのかを特定できるようにしている。
例えば、通信制御部128は、ゲームを開始した場合には、ゲームを開始したことを通知するための情報をサーバ20に送信し、ゲームが終了した場合には、ゲーム結果(勝敗結果)や各種ゲームパラメータに関する情報をサーバ20に送信する。
また、通信制御部128は、記憶部170に記憶されるプレーヤが所有するキャラクタに関する情報や設定用プレーヤキャラクタとして設定されたプレーヤキャラクタの設定情報(デッキ情報)、配置内容、プレーヤが所有するアイテムに関する情報、ゲーム内通貨等の情報等を、サーバ20に送信してもよい。
また、通信制御部128は、記憶部170に記憶されるプレーヤが所有するキャラクタに関する情報や設定用プレーヤキャラクタとして設定されたプレーヤキャラクタの設定情報(デッキ情報)、配置内容、プレーヤが所有するアイテムに関する情報、ゲーム内通貨等の情報が変更された場合に、変更後の情報をサーバ20に送信してもよい。
画像生成部130は、処理部100で行われる種々の処理の結果に基づいて描画処理を行い、これによりゲーム画像(プレーヤキャラクタ、敵キャラクタ、判定結果に応じた内容等を含むゲーム画像)を生成し、表示部190に出力する。画像生成部130は、オブ
ジェクト空間(ゲーム空間)内において仮想カメラ(所与の視点)から見える画像(いわゆる3次元画像)を生成してもよい。
音生成部140は、処理部100で行われる種々の処理の結果に基づいて音処理を行い、BGM、効果音、又は音声などのゲーム音を生成し、音出力部192に出力する。
2.2 サーバの構成
図3に本実施形態のサーバ20の機能ブロック図の例を示す。本実施形態のサーバ20は図3の構成要素(各部)の一部を省略した構成としてもよい。
記憶部270は、処理部200や通信部296などのワーク領域となるもので、その機能はRAM(VRAM)などにより実現できる。記憶部270は、主記憶部272、格納部260(例えば、データベース)を含む。
格納部260には、サーバ20が管理する端末の端末識別情報又はプレーヤ識別情報(ユーザアカウント、ユーザ識別情報)に対応付けて、プレーヤパスワード、メールアドレス、課金情報等を格納してもよい。
情報記憶媒体280(コンピュータにより読み取り可能な媒体)は、プログラムやデータなどを格納するものであり、その機能は、光ディスク(CD、DVD)、光磁気ディスク(MO)、磁気ディスク、ハードディスク、磁気テープ、或いはメモリ(ROM)などにより実現できる。処理部200は、情報記憶媒体280に格納されるプログラム(データ)に基づいて本実施形態の種々の処理を行う。即ち情報記憶媒体280には、本実施形態の各部としてコンピュータを機能させるためのプログラム(各部の処理をコンピュータに実行させるためのプログラム)が記憶される。
通信部296は外部(例えば、端末、他のサーバや他のゲームシステム)との間で通信を行うための各種制御を行うものであり、その機能は、各種プロセッサ又は通信用ASICなどのハードウェアや、プログラムなどにより実現できる。処理部200(プロセッサ)は、情報記憶媒体280に記憶されるプログラム等に基づいて、処理を行う。具体的には、端末からの要求に応じてサービスを提供する。
また、処理部200は記憶部270内の主記憶部272をワーク領域として各種処理を行う。処理部200の機能は各種プロセッサ(CPU、DSP等)、ASIC(ゲートアレイ等)などのハードウェアや、プログラムにより実現できる。
特に、本実施形態のサーバの処理部200は、ネットワーク設定部210と、通信制御部211と、ゲーム制御部214と、を含む。なお、これらの一部を省略する構成としてもよい。
ネットワーク設定部210は、プレーヤ識別情報又は端末識別情報を端末10から受信し、受信したプレーヤ識別情報又は端末識別情報に対応づけて、プレーヤのネットワーク情報を、格納部260に格納する。
通信制御部211は、端末10とネットワークを介してデータを送受信する処理を行う。つまり、通信制御部211は、プレーヤの端末10からの要求に基づいて、要求に応じた情報を当該端末10に送信する。
また、通信制御部211は、端末10からデータを受信する際には、データと共にプレーヤの識別情報(或いは端末の識別情報)を受信する。つまり、サーバにおいて、受信し
た情報がいずれのプレーヤ(端末)に関する情報であるのかを特定できるように制御している。また、サーバは、一のプレーヤの情報を他のプレーヤの端末に送信する際には、当該情報と共に一のプレーヤの識別情報(或いは端末の識別情報)を送信する。つまり、端末において、サーバから受信した情報がいずれのプレーヤ(端末)に関する情報であるのかを特定できるように制御している。
また、通信制御部211は、ゲーム終了後、端末10から勝敗決定結果(ゲーム結果)を受信してもよい。
ゲーム制御部214は、ゲームに関する種々の制御を行う。例えば、ゲーム制御部214は、プレーヤ毎に、プレーヤが所有するキャラクタに関する情報や、設定用プレーヤキャラクタとして設定されたキャラクタの設定情報(デッキ情報)、プレーヤが所有するアイテムに関する情報、ゲーム内通貨等のプレーヤ情報を、サーバの記憶部270(格納部260)に記憶する処理を行う。
また、ゲーム制御部214は、プレーヤが所有するキャラクタに関する情報や設定用プレーヤキャラクタとして設定されたプレーヤキャラクタの設定情報(デッキ情報)、配置内容、プレーヤが所有するアイテムに関する情報、ゲーム内通貨等の情報等の変更内容を端末10から受信した場合には、変更後の内容に更新する処理を行う。
また、ゲーム制御部214は、ゲーム装置(端末10)から送信されたゲーム結果等の情報を受信し、当該情報に基づいて、各プレーヤに対応付けられた種々の情報を更新する処理を行う。
また、ゲーム制御部214は、各端末から入力情報を受信し、受信した入力情報に基づき、攻撃力などのパラメータ演算を行い勝敗判定を行ってもよい。
なお、本実施形態のサーバ20の処理部200は、端末10の処理部100の一部又は全部の処理を行うようにしてもよい。
3.本実施形態の手法
3.1 概要
本実施形態のゲームは、プレーヤキャラクタと敵キャラクタとを対戦させるゲームに関する。図4は、本実施形態のゲーム画面(ゲーム画像)の一例を示す図である。ゲーム画面Wは、端末10の表示部190(タッチパネルを備えたディスプレイ)に表示され、プレーヤは、指先やタッチペン等をタッチパネルに接触させる接触入力(接触操作、タッチ操作)を行うことで操作入力を行うことができる。
図4に示すゲーム画面Wは、敵キャラクタとプレーヤキャラクタとを配置するための配置領域ARを含む。図4に示すように、配置領域ARに少なくとも3以上のプレーヤキャラクタが配置され、少なくとも1以上の敵キャラクタが配置される。本実施形態では、プレーヤキャラクタの配置位置を固定し、敵キャラクタを移動、停止の制御を行い、ゲームを進行させる。
そして、ゲーム(ダンジョン)が開始されプレーヤのターンが到来すると、図4に示すように、プレーヤは、敵キャラクタQAを囲むように、プレーヤキャラクタの位置を頂点とする三角形を形成する入力(例えば、スライド操作等)を行う。例えば、プレーヤが入力した軌跡を線Lで表示している。
そして、本実施形態では、プレーヤキャラクタPA、PB、PDの位置を頂点とする三
角形の領域内に敵キャラクタQAが存在している場合に、プレーヤキャラクタPA、PB、PDの攻撃力に基づき、敵キャラクタQAの体力値を減算する攻撃処理を行う。
このように、本実施形態では、複数のプレーヤキャラクタにより敵キャラクタを囲い込み、敵キャラクタを攻撃するというシンプルなルールで奥深い戦略性のあるゲームを提供する。
3.2 三角形を形成する処理
本実施形態では、スライド操作に基づきプレーヤキャラクタの指定(選択)を受け付け、指定されたプレーヤキャラクタを頂点とする三角形を形成する。
本実施形態では、配置領域に配置されたプレーヤキャラクタ毎に、プレーヤキャラクタの位置に基づき入力判定領域を設定し、入力判定領域に接触操作(接触入力)を検出した場合に当該プレーヤキャラクタの指定入力を受け付ける。例えば、図5に示すように、配置領域に配置されたプレーヤキャラクタPAの位置P1を中心に半径rの円を入力判定領域A1とし、当該入力判定領域A1に接触操作を検出した場合にプレーヤキャラクタPAの指定入力を受け付ける。
例えば、図6に示すように、各プレーヤキャラクタPA、PB、PC、PD、PE、PFそれぞれの位置P1、P2、P3、P4、P5、P6に基づいて入力判定領域A1、A2、A3、A4、A5、A6が設定される。そして、最初に入力判定領域A1において接触操作を検出した場合に、プレーヤキャラクタPAを1番目に指定したプレーヤキャラクタとして入力を受け付ける。そして、次に、入力判定領域A2において接触操作を検出した場合に、プレーヤキャラクタPBを2番目に指定したプレーヤキャラクタとして入力を受け付ける。そして、次に、入力判定領域A4において接触操作を検出した場合に、プレーヤキャラクタPDを3番目に指定したプレーヤキャラクタとして入力を受け付ける。
このようにして、3つのプレーヤキャラクタPA、PB、PDが順に指定されると、当該プレーヤキャラクタPA、PB、PDの点P1、P2、P4を頂点とする三角形DA1を形成する。
本実施形態では、3番目に指定したプレーヤキャラクタとして入力を受け付けた後に確定入力を受け付けたタイミングで、三角形DA1を形成(確定)する処理を行う。
例えば、3番目に指定したプレーヤキャラクタPDを指定後、プレーヤが引き続きスライド操作により1番目に指定されたプレーヤキャラクタPAの入力判定領域A1に接触する入力を確定入力とし、三角形DA1を形成(確定)する処理を行う。このように、本実施形態では、プレーヤに、3つのプレーヤキャラクタによって敵キャラクタを囲い込むように、三角形を形成するゲームを提供している。なお、本実施形態では3番目のプレーヤキャラクタPDの指定入力を受け付けたタイミングで、三角形DA1を形成してもよいし、確定を意味する所定の入力を受け付けたタイミングで、三角形DA1を形成してもよい。
また、本実施形態では、図4に示すように、3番目のプレーヤキャラクタが指定された後に、1、2、3番目のプレーヤキャラクタの位置を頂点とする三角形を第1の色(例えば、青色)で表示してもよい。また、三角形の形成後(確定後)、形成された三角形を第1の色で表示してもよいし、形成された三角形を第1の色とは異なる第3の色(例えば、緑色)で表示してもよい。
また、プレーヤが入力中の経過(スライド操作)の軌跡Lを第2の色(例えば、黄色)
で表示し、プレーヤに現在作成中の三角形をガイド表示するようにしてもよい。
3.3 プレーヤキャラクタの説明
本実施形態では、図7に示すように、各プレーヤキャラクタの識別情報(例えば、プレーヤキャラクタ名)に対応づけて、属性、体力値(HP値)、攻撃力、制限時間等のパラメータを設定する。
特に、本実施形態では、各プレーヤキャラクタに予め属性を設定している。ここで、属性とは、特性や能力を示す情報等である。例えば、属性は、「近接」「遠距離」「特殊」など攻撃の種類に応じた情報とすることができる。
また、体力値は、ゲームの勝敗を決定するためのパラメータであり、プレーヤキャラクタ、敵キャラクタのうち先に体力値が0に到達した方が負けと判定される。
また、攻撃力は、対戦処理に用いるパラメータであり、攻撃時に相手キャラクタの体力値から減算する値を示す。
また、制限時間は、三角形を形成するための入力を受け付ける制限時間である。特に、本実施形態では、1つめに形成する三角形の入力を受け付ける時間を無制限にし、2つめ以降に形成する三角形の入力を受け付ける時間を、1番目に指定入力されたプレーヤキャラクタに対応づけられた制限時間に設定する。つまり、プレーヤは、2以上の三角形を形成する場合には、制限時間内に2つめ以降の三角形の形成入力を行う必要がある。
また、本実施形態では、図示していないが、各プレーヤキャラクタにゲーム開始前に予めアイテム(装備品)を設定できるようにしてもよい。例えば、アイテムとは、アイテムを使用することにより所与のパラメータ値を変動させるものである。
そして、本実施形態では、ゲーム開始前に、デッキに12体のキャラクタをプレーヤキャラクタとして設定する。
本実施形態では、例えば、デッキに設定される12体のうち9体をプレーヤが所有するキャラクタとし、1体をフレンドが所有するキャラクタとし、2体をステージに紐付けられた予め用意されたキャラクタとする。
3.4 敵キャラクタの説明
図8は敵キャラクタのパラメータ等の情報を示す。敵キャラクタには、体力値(HP値)、攻撃力が予め設定されている。なお、図示していないが、本実施形態では、プレーヤキャラクタと同様に敵キャラクタに属性やアイテムを設定してもよい。
3.5 対戦ゲームの説明
次に、本実施形態の対戦ゲームの処理について説明する。本実施形態では、プレーヤが操作入力を行って三角形を形成し、三角形の領域内に敵キャラクタが存在するか否かを判定し、三角形の領域内に敵キャラクタが存在する場合に、当該敵キャラクタを取り囲んだプレーヤキャラクタが攻撃する処理を一単位とする。また、敵キャラクタがプレーヤキャラクタに攻撃する処理を一単位とする。これらの一単位を1ターン(ゲーム進行単位)として対戦ゲームが進行するように処理を行う。
例えば、プレーヤのターンにおいて、デッキに設定された12体のプレーヤキャラクタのうち6つのプレーヤキャラクタがランダムに抽出されて、図4に示すように、当該6体のプレーヤキャラクタが配置領域に配置される。なお、配置領域に配置される6つのプレ
ーヤキャラクタは、コンピュータプログラムに基づき予め決められた位置に配置されるが、プレーヤの操作入力によって配置位置を決めるようにしてもよい。そして、プレーヤのターンでは、図4に示すように、スライド操作に基づき、3つのプレーヤキャラクタPA、PB、PDを順に指定し、当該プレーヤキャラクタPA、PB、PDの点P1、P2、P4を頂点とする三角形DA1を形成する。
また、プレーヤのターンでは、配置領域において敵キャラクタが移動する。移動方向や移動速度は敵キャラクタに予め設定されている。
本実施形態では、最初にプレーヤキャラクタの指定を受け付けたタイミングで、敵キャラクタの移動速度を遅くする。敵キャラクタの移動速度を遅くすることにより、プレーヤが、簡単に、敵キャラクタを取り囲むスライド操作が行うことができるようにしている。また、1つめの三角形DA1が形成(確定)された時点で、敵キャラクタを停止させる制御を行う。
また、本実施形態では、プレーヤが最初の1つの三角形DA1を形成する前に、指を画面(タッチパネル)から離し、スライド操作(接触操作)を中断(終了)した場合には、中断前に行ったスライド操作を無効にする。つまり、プレーヤは三角形DA1が形成されるまでは、何度でも作り直すことができる。なお、最初の1つの三角形DA1が形成される前にスライド操作が中断された場合には、プレーヤのターンが減らないように制御する。
そして、三角形DA1が形成されると、図9に示すように、三角形DA1の領域内に敵キャラクタQAが存在するか否かを判定する。例えば、敵キャラクタQAの位置Q1が三角形DA1の領域内に位置するか否かを判定し、敵キャラクタQAの位置Q1が三角形DA1の領域内に位置する場合に、三角形DA1の領域内に敵キャラクタQAが存在すると判定する。一方、敵キャラクタQAの位置Q1が三角形DA1の領域内に位置しない場合に、三角形DA1の領域内に敵キャラクタQAが存在しないと判定する。
なお、図10(A)(B)に示すように、敵キャラクタQBが大きい場合には、敵キャラクタQBに複数の判定点Q2−1、Q2−2、Q2−3、Q2−4を設ける。そして、三角形DA1の領域内に、敵キャラクタQBの少なくとも一つの判定点が位置している場合に、三角形DA1の領域内に敵キャラクタQBが存在すると判定する。なお、三角形DA1の領域内に所定数以上の判定点が位置している場合に、三角形DA1の領域内に敵キャラクタQBが存在すると判定してもよい。
例えば、図10(A)の場合、三角形DA1の領域内に、敵キャラクタQBの判定点Q2−2、Q2−3、Q2−4が位置しているので、三角形DA1の領域内に敵キャラクタQBが存在すると判定する。また、図10(B)の場合、三角形DA1の領域内に、敵キャラクタQBの判定点Q2−1、Q2−2、Q2−3、Q2−4が位置しているので、三角形DA1の領域内に敵キャラクタQBが存在すると判定する。
そして、図9に戻り説明すると、三角形DA1の領域内に敵キャラクタQAが存在する場合、三角形DA1の頂点P1、P2、P4に対応するプレーヤキャラクタPA、PB、PDが、敵キャラクタQAを攻撃する処理を行う。
つまり、敵キャラクタの体力値から、当該敵キャラクタを取り囲んだプレーヤキャラクタPA、PB、PDそれぞれの攻撃力を減算する処理を行う。なお、敵キャラクタに防御力が設定されている場合には、プレーヤキャラクタの攻撃力から敵キャラクタの防御力を減算し、減算した値(ダメージ力)を当該敵キャラクタの体力値から減算する。
なお、図10(A)(B)に示すように、敵キャラクタQBのように複数の判定点が設定されている場合には、三角形DA1の領域内に位置する判定点の数に応じて、プレーヤキャラクタの攻撃力を変動させるようにしてもよい。例えば、「判定点の総数」に対する「領域内の判定点の数」の割合xを求め、プレーヤキャラクタの攻撃力にxを乗算する。図10(A)では、4つの判定点のうち3つの判定点が三角形DA1の領域内に属しているので、敵キャラクタQBを取り囲んだプレーヤキャラクタPA、PB、PDそれぞれの攻撃力に0.75を乗算し、乗算後の攻撃力を敵キャラクタQBの体力値から減算する。また、図10(B)では、4つの判定点のうち4つの全ての判定点が三角形DA1の領域内に属しているので、敵キャラクタQBを取り囲んだプレーヤキャラクタPA、PB、PDそれぞれの攻撃力に1を乗算し、乗算後の攻撃力を敵キャラクタQBの体力値から減算する。
以上のように、本実施形態では、敵キャラクタを取り囲むように三角形を形成する攻撃を行うので、プレーヤは、どのプレーヤキャラクタを指定して三角形を形成するのかをよく検討して戦略的にゲームプレイすることができる。
そして、プレーヤのターンが終了すると、敵キャラクタのターンが到来する。なお、本実施形態では、プレーヤが所定のターン数(1又は複数のターン)を実行した後に、敵キャラクタのターンが到来するようにしてもよいし、プレーヤのターンと、敵キャラクタのターンが交互に到来するようにしてもよい。
敵キャラクタのターンにおいては、敵キャラクタが、攻撃対象のプレーヤキャラクタに攻撃処理を行う。特に、本実施形態では、敵キャラクタは、配置領域に存在するプレーヤキャラクタすべてを攻撃対象としてもよいし、配置領域に存在する一部のプレーヤキャラクタを攻撃対象としてもよい。
そして、攻撃対象のプレーヤキャラクタの体力値から敵キャラクタの攻撃力を減算する攻撃処理を行う。なお、プレーヤキャラクタに防御力が設定されている場合には、敵キャラクタの攻撃力からプレーヤキャラクタの防御力を減算し、減算した値(ダメージ力)を当該プレーヤキャラクタの体力値から減算する。
そして、本実施形態では、敵キャラクタの体力値が0(所定値の一例)に到達した場合、当該敵キャラクタを消去する。一の対戦ゲームに、予め所定数(例えば、5体)の敵キャラクタを参加させており、敵キャラクタがいなくなった場合には、順次、次の敵キャラクタを配置させる。
本実施形態では、このようにプレーヤのターン、敵キャラクタのターンを交互に実行し、最終的には、プレーヤキャラクタの体力値(HP値)と、敵キャラクタの体力値とに基づいて勝敗を決定する。
例えば、本実施形態では、デッキに設定した全てのプレーヤキャラクタの体力値が0になる前に、一の対戦ゲームに登場する全ての敵キャラクタの体力値が0になると、プレーヤの勝ち、敵キャラクタの負けと判定する。
一方、一の対戦ゲームに登場する全ての敵キャラクタの体力値が0になる前に、デッキに設定した全てのプレーヤキャラクタの体力値が0になると、プレーヤの負け、敵キャラクタの勝ちと判定する。
つまり、一の対戦ゲームにおいて、全プレーヤキャラクタの体力値の合計と、全敵キャ
ラクタの体力値の合計とを比較し、先に体力値の合計値が0に達した方が敗者とし他方を勝者とするように判定する。
また、本実施形態では、図4に示すように、画面Wの上部に敵キャラクタの体力値を示すゲージGを表示してプレーヤがゲーム中に敵キャラクタの体力値を確認できるようにしている。なお、図示していないが、各プレーヤキャラクタの体力値を示すゲージを各プレーヤキャラクタの近傍に表示してもよい。
3.6 複数の三角形の形成
本実施形態では、プレーヤは複数の三角形を形成することができる。例えば、図11に示すように、プレーヤのターンにおいて、1つめの三角形DA1が形成(確定)されたタイミングから、最初に指定されたプレーヤキャラクタPAに対応づけられた制限時間内に、2つめ以降の三角形の入力を受け付ける。つまり、プレーヤは、2以上の三角形を形成する場合には、操作入力を制限時間内に行わなければならないので、プレーヤに緊張感をもって迅速に操作するように促すことができ、更に興趣性の高いゲームを提供することができる。
本実施形態では、制限期間の残り時間をカウントする開始時点を、1つめの三角形DA1が形成(確定)されたタイミングとしている。つまり、本実施形態では、図12に示すように、プレーヤのターン開始時点T0から1つめの三角形DA1の形成時T1までの期間B1は、特に制限を設けていない。一方、2つ目以降の三角形を形成するためのプレーヤキャラクタを指定する入力については、最初に指定されたプレーヤキャラクタPAに対応づけられた制限時間に制限する。つまり、本実施形態では、2つ目以降の三角形を形成するための入力の制限時間を、最初に指定されるプレーヤキャラクタに対応づけられた制限時間に設定するので、プレーヤは制限時間の長いプレーヤキャラクタを最初に指定するなど検討しながら戦略的にゲームプレイすることができる。
例えば、プレーヤキャラクタPAに対応づけられた制限時間が5秒間である場合には、図12に示すように、1つめの三角形DA1の形成時T1から制限時間のカウントを開始する。つまり、T1時点から5秒が経過すると、三角形を形成するためのプレーヤキャラクタを指定する入力を受け付けないように制御する。このように本実施形態では、プレーヤのターンでは、1つの三角形が確実に形成されることを保障し、プレーヤに満足感を与えつつ、2つ目以降の三角形の形成には操作技量が反映され、プレーヤに飽きのこないゲームを提供するようにしている。
なお、1つ目の三角形DA1が形成(確定)された時点で、敵キャラクタを停止させる制御を行っているので、プレーヤは2つめ以降の三角形の形成時では、敵キャラクタを取り囲むように容易にスライド操作をすることができる。
また、本実施形態では、図11に示すように、制限時間の残り時間を示すゲージTLを最初に指定されたプレーヤキャラクタPAの周囲に表示する。例えば、図12に示すように、ゲージTLは12個のマスm1〜m12を設け、制限時間の残り時間を赤色で表示し、経過時間を白色で表示し、プレーヤが入力可能な残り期間を簡単に確認できるように表示制御する。
なお、本実施形態では、プレーヤが最初の三角形DA1を形成した後において、2つ目以降の三角形が形成される前に指を画面(タッチパネル)から離し、スライド操作(接触操作)を中断した場合には、制限時間の残り時間があったとしても、以後プレーヤキャラクタを指定する入力を受け付けないように制御する。このようにすれば、2つ目以降の三角形の形成にはやり直しができないので、プレーヤは、一つ目の三角形を形成(確定)す
る前に、ある程度2つ目以降の三角形の形成を予想する等し、更に戦略的にゲームプレイを行うことができる。なお、本実施形態では、プレーヤのターンにおいて、最初の1つの三角形DA1が形成された後において、2つ目以降の三角形の形成時のスライド操作が中断された場合には攻撃処理に移行し、当該ターンが終了するように制御する。
また、本実施形態では、プレーヤのターンにおいて、最初に指定されたプレーヤキャラクタPAの位置を起点とし、当該起点に基づく三角形を複数形成可能としている。つまり、最初に指定されたプレーヤキャラクタPAの位置は、敵キャラクタを囲い込むための起点とし、三角形を形成する最初の頂点とする。つまり、複数の三角形が形成される場合には、1つの頂点は最初に指定されたプレーヤキャラクタの位置となる。また、本実施形態では、頂点が全て同じ位置にある同一の三角形が複数形成することを禁止する。
そして、本実施形態では、プレーヤのターンにおいて(制限時間終了時或いはプレーヤのスライド操作終了時までに)形成した各三角形の領域内に敵キャラクタが存在するか否かを判定し、三角形毎に、三角形の領域内に敵キャラクタが存在する場合に攻撃処理を行う。
例えば、図13に示すように、1つめの三角形DA1が形成された後に、引き続き、スライド操作に基づき、3つのプレーヤキャラクタPA、PB、PCを順に指定し、当該プレーヤキャラクタPA、PB、PCの点P1、P2、P3を頂点とする三角形DA2を形成したとする。
すると、三角形DA1、DA2それぞれの領域内に敵キャラクタQAが存在するか否かを判定し、三角形DA1の領域内に敵キャラクタQAが存在する場合、三角形DA1の頂点P1、P2、P4に対応するプレーヤキャラクタPA、PB、PDが、敵キャラクタQAを攻撃する処理を行い、三角形DA2の領域内に敵キャラクタQAが存在する場合、三角形DA2の頂点P1、P2、P3に対応するプレーヤキャラクタPA、PB、PCが、敵キャラクタQAを攻撃する処理を行う。
なお、本実施形態では、初期値0のコンボ値を予め用意し、プレーヤのターンが到来する度に、(形成された三角形の個数−1)をコンボ値に加算し、コンボ値が所定値以上(例えば、10以上)になった場合に、特殊なスキルプログラム(例えば、敵キャラクタの体力値から特別な攻撃力(例えば、1000)を減算する処理)を発動(実行)するようにしてもよい。そして、スキルプログラム発動後は、コンボ値を初期値に戻すように制御する。このようにすれば、プレーヤに対して、複数の三角形を形成する動機を与えることができ、更に面白みのあるゲームを提供することができる。
また、本実施形態では、プレーヤのターンにおいて形成した三角形が複数ある場合には、当該複数の三角形が重複する領域に敵キャラクタが存在するか否かを判断し、当該重複する領域に敵キャラクタが存在する場合には、三角形の各頂点に対応するプレーヤキャラクタの攻撃力を増大する(例えば、1.5倍にする)ように制御してもよい。つまり、本実施形態によれば、敵キャラクタを囲む三角形を多く形成すればする程、攻撃力を増大することができるので、プレーヤは、いかにして多くの三角形を形成するのかをよく考えながら戦略的にゲームプレイすることができる。
3.7 攻撃力の変動例
また、本実施形態では、プレーヤキャラクタが敵キャラクタを攻撃する際のプレーヤキャラクタの攻撃力の値を、形成した三角形の「面積」及び「各辺の長さの合計値」の少なくとも一方に基づき、更に変動するように制御してもよい。
例えば、形成された三角形の面積に応じて、プレーヤキャラクタの攻撃力を変動させるようにしてもよい。本実施形態では、三角形の面積が小さいほど、攻撃力の値が高くなるように制御する。例えば、三角形の面積値が第1の所定値以上(例えば、100以上)である場合には、攻撃力を1倍にし、三角形の面積値が第1の所定値未満かつ第2の所定値以上(例えば、100未満50以上)である場合には、攻撃力を2倍にし、三角形の面積値が第2の所定値未満かつ第3の所定値以上(例えば、50未満0以上)である場合には、攻撃力を3倍にする。
具体的に、図14に示すように、三角形DA1の面積が80であり、三角形DA3の面積が10である場合には、敵キャラクタを、三角形DA3を形成するプレーヤキャラクタで取り囲む方が、攻撃力が強くなる。つまり、本実施形態では、三角形の面積が小さいほど、敵キャラクタを取り囲むことが困難になるが、一方で攻撃力が強くなるメリットを与え、興趣性の高いゲームを提供している。
なお、本実施形態では、形成された三角形の「各辺の長さの合計値」に応じて、プレーヤキャラクタの攻撃力を変動させるようにしてもよい。本実施形態では、三角形の「各辺の長さの合計値」が小さいほど、攻撃力の値が高くなるように制御する。例えば、三角形の「各辺の長さの合計値」が第1の所定値以上(例えば、100以上)である場合には、攻撃力を1倍にし、三角形の「各辺の長さの合計値」が第1の所定値未満かつ第2の所定値以上(例えば、100未満50以上)である場合には、攻撃力を2倍にし、三角形の「各辺の長さの合計値」が第2の所定値未満かつ第3の所定値以上(例えば、50未満0以上)である場合には、攻撃力を3倍にする。
具体的に、図14に示すように、三角形DA1の「各辺の長さLA1、LA2、LA3の合計値」が80であり、三角形DA3の「各辺の長さLB1、LB2、LB3の合計値」が10である場合には、敵キャラクタを、三角形DA3を形成するプレーヤキャラクタで取り囲む方が、攻撃力が強くなる。つまり、本実施形態では、三角形の「各辺の長さの合計値」が小さいほど、敵キャラクタを取り囲むことが困難になるが、一方で攻撃力が強くなるメリットを与え、興趣性の高いゲームを提供している。
また、本実施形態では、三角形を形成するために指定したプレーヤキャラクタの属性に基づき攻撃力を更に変動させるようにしてもよい。例えば、三角形を形成するために指定したプレーヤキャラクタの属性が「近接」の場合は、形成した三角形の面積及び「各辺の長さの合計値」の少なくとも一方が大きい値程、当該プレーヤキャラクタの攻撃力が下がるように制御する。例えば、三角形の面積値及び「各辺の長さの合計値」の少なくとも一方が第1の所定値以上(例えば、100以上)である場合には、攻撃力を0.5倍にし、三角形の面積値及び「各辺の長さの合計値」の少なくとも一方が第1の所定値未満かつ第2の所定値以上(例えば、100未満50以上)である場合には、攻撃力を0.75倍にし、三角形の面積値及び「各辺の長さの合計値」の少なくとも一方が第2の所定値未満かつ第3の所定値以上(例えば、50未満0以上)である場合、攻撃力を1倍にする。
また、例えば、三角形を形成するために指定したプレーヤキャラクタの属性が「遠距離」の場合は、形成した三角形の面積及び「各辺の長さの合計値」にかかわらず、当該プレーヤキャラクタの攻撃力が下がらないように制御してもよい。
また、例えば、三角形を形成するために指定したプレーヤキャラクタの属性が「特殊」の場合は、形成した三角形の面積及び「各辺の長さの合計値」にかかわらず、当該プレーヤキャラクタの攻撃力に所与の値(例えば、100)を加算するようにしてもよい。
このようにすれば、プレーヤは、各プレーヤキャラクタの属性を考慮することになり、
更に戦略的にゲームをすることができる。
また、本実施形態では、三角形の面積、各辺の長さの合計値が、攻撃力に影響を及ぼすので、三角形の面積、辺の長さの合計値に応じて、プレーヤが入力中の経過(スライド操作)の軌跡Lの太さを変更して表示するようにしてもよい。
例えば、三角形の面積、各辺の長さの合計値が小さいほど、プレーヤが入力中の経過(スライド操作)の軌跡Lを太い線で表示し、三角形の面積、各辺の長さの合計値が大きい程、プレーヤが入力中の経過(スライド操作)の軌跡Lを細い線で表示するようにしてもよい。
3.8 三角形の形成の詳細な説明
本実施形態では、接触検出領域(タッチパネル)を備える表示画面に、プレーヤがスライド操作することによって、プレーヤキャラクタの指定を受け付け、所定の形状の三角形を形成する。
しかし、プレーヤのスライド操作中に、プレーヤが指定したくないプレーヤキャラクタの入力判定領域を接触してしまう場合も生じ得る。例えば、プレーヤが、図15(A)に示すように、各プレーヤキャラクタPA、PB、PCの各位置P1、P2、P3を頂点とする三角形DA4を形成することを望んでいたとする。その場合、プレーヤは、入力判定領域A1、A2、A3を順に接触入力することによりプレーヤキャラクタPA、PB、PCを順に指定して、初期エリア(入力判定領域A1)に戻るスライド操作を行う。なお、初期エリアとは、プレーヤのターンにおいて、最初に検出された入力判定領域を意味する。
しかし、例えば、プレーヤが意図せずに、プレーヤキャラクタPDの入力判定領域A4を触れてしまいプレーヤキャラクタPDを指定してしまうことがある。
そこで、本実施形態では、1、2、3番目に指定された3つのプレーヤキャラクタPA、PD、PBの各位置P1、P4、P2を頂点とする三角形DA5の頂点P1の内角の角度θ(P1とP4を結ぶ線と、P1とP2を結ぶ線とがなす角度θ)が所定角度以下(例えば、15度以下)であるか否かを判断し、角度θが所定角度以下である場合には、2番目に指定されたプレーヤキャラクタPDの指定を無効とし、1、3、4番目に指定されたプレーヤキャラクタPA、PB、PCの各位置P1、P2、P3を頂点とする三角形DA4を形成するように制御する。
このようにすれば、プレーヤがプレーヤキャラクタPAを指定後、次に誤ってプレーヤキャラクタPDを指定してしまったとしても、プレーヤキャラクタPDの指定をキャンセルすることができ、図15(A)に示すように、プレーヤが求める三角形DA4の形成を行うことができる。
なお、図15(B)に示すように、プレーヤが、望んで入力判定領域A1、A4、A2を順に接触入力することによりプレーヤキャラクタPA、PD、PBを指定する場合もあるが、かかる場合には、4番目に指定されるプレーヤキャラクタが存在せずに、初期の位置P1に戻る確定入力が行われることになる。つまり、プレーヤキャラクタPA、PD、PBの順に指定後、1番目に指定されたプレーヤキャラクタPAの入力判定領域(初期エリア)A1に接触する入力が行われることにより確定入力が受け付けられ、プレーヤキャラクタPA、PD、PBの位置P1、P4、P2を頂点とする三角形DA5を形成することができる。
3.9 ゲーム結果
本実施形態では、プレーヤキャラクタが敵キャラクタに勝利した場合には、プレーヤに新たなアイテムや新たなキャラクタを付与してもよい。つまり、プレーヤはゲームに勝利することにより所有するプレーヤキャラクタ数やアイテム数を増加させることができる。
3.10 プレーヤキャラクタの配置
本実施形態では、プレーヤのターンにおいて、前回のターンで攻撃したプレーヤキャラクタを配置領域から外し、デッキに設定された別のプレーヤキャラクタを配置領域に配置するように制御する。
例えば、プレーヤがデッキに、プレーヤキャラクタPA、PB、PC、PD、PE、PF、PG、PH、PI、PJ、PK、PLを設定していたとする。そして、プレーヤの一のターンにおいて、プレーヤキャラクタPA、PB、PC、PD、PE、PFが配置領域に配置され、プレーヤキャラクタPA、PB、PDの位置に基づく三角形DA1とプレーヤキャラクタPA、PB、PCの位置に基づく三角形DA2とが形成され、当該プレーヤキャラクタPA、PB、PC、PDが敵キャラクタQAを攻撃したとする。すると、次のプレーヤのターンにおいて、プレーヤキャラクタPA、PB、PC、PDを配置領域から外し、デッキからランダムに抽出されたプレーヤキャラクタPG、PH、PI、PJを配置領域に配置する。
つまり、本実施形態では、ターン毎に、前回のターンにおいて敵キャラクタに攻撃を行ったプレーヤキャラクタを、前回のターンにおいて配置領域に配置されていなかった別のプレーヤキャラクタと入れ替える処理を行う。
3.11 フローチャート
(1)ゲーム処理
図16(A)〜(C)を用いて、本実施形態のゲーム処理の流れについて説明する。
まず、プレーヤキャラクタと敵キャラクタとを配置領域に配置する処理を行う(ステップS1)。次に、敵キャラクタの移動を開始させ(ステップS2)、プレーヤのターンが到来したか否か判断し(ステップS3)、プレーヤのターンである場合には(ステップS3のY)、プレーヤキャラクタ側の攻撃処理(ステップS4)を行う。
続いて、プレーヤキャラクタ側の攻撃処理(ステップS4)の詳細な処理について、図16(B)(C)を用いて説明する。まず、図16(B)に示すように、最初のプレーヤキャラクタの指定入力を受け付けたか否かを判断する(ステップS10)。
最初のプレーヤキャラクタの指定入力を受け付けた場合(ステップS10のY)、敵キャラクタの移動速度を遅くする制御を行う(ステップS11)。そして、(2番目以降の)プレーヤキャラクタの指定入力を受け付ける(ステップS12)。
また、スライド操作が終了したか否かを判断し(ステップS13)、スライド操作が終了した場合には(ステップS13のY)、三角形を形成するための入力をキャンセルしたものとみなし、ステップS10に戻る。
一方、スライド操作が終了していない場合(ステップS13のN)、1つ目の三角形が形成されたか否かを判断する(ステップS14)。一つ目の三角形が形成された場合(ステップS14のY)、敵キャラクタを停止させる制御を行う(ステップS15)。一方、一つ目の三角形が形成されない場合(ステップS14のN)、ステップS12に戻る。
そして、最初に指定されたプレーヤキャラクタの制限時間のカウントを開始する(ステップS16)。そして、プレーヤキャラクタの指定入力を受け付け(ステップS17)、制限時間が終了したか否かを判断し(ステップS18)、制限時間が終了した場合(ステップS18のY)、ステップS20に進む。
一方、制限時間が終了していない場合には(ステップS18のN)、スライド操作が終了したか否かを判断し(ステップS19)、スライド操作が終了した場合には(ステップS19のY)、ステップS20に進み、スライド操作が終了していない場合には(ステップS19のN)、ステップS17に戻る。
そして、図16(C)に示すように、三角形の領域内に敵キャラクタが存在するか否かを判断する(ステップS20)。
三角形の領域内に敵キャラクタが存在する場合には(ステップS20のY)、三角形の各辺の長さの合計値に基づいて、三角形の各頂点に対応する各プレーヤキャラクタの攻撃力を変動させる(ステップS21)。
そして、三角形の各頂点に対応する各プレーヤキャラクタの属性に基づいて、当該各プレーヤキャラクタの攻撃力を変動させる(ステップS22)。
そして、敵キャラクタが複数の三角形の重複領域内に存在するか否かを判断する(ステップS23)。敵キャラクタが複数の三角形の重複領域内に存在する場合(ステップS23のY)、各三角形の各頂点に対応する各プレーヤキャラクタの攻撃力を増大させる(ステップS24)。一方、敵キャラクタが複数の三角形の重複領域内に存在しない場合(ステップS23のN)、ステップS25に進む。
そして、敵キャラクタの体力値から、三角形の各頂点に対応する各プレーヤキャラクタの攻撃力を減算する処理を行い(ステップS25)、図16(A)のステップS2に戻る。
また、三角形の領域内に敵キャラクタが存在しない場合(ステップS20のN)、図16(A)のステップS2に戻る。
なお、図16(A)に示すように、プレーヤのターンでない場合(ステップS3のN)は敵キャラクタ側の攻撃処理を行う(ステップS6)。例えば、攻撃対象の各プレーヤキャラクタの体力値から敵キャラクタの攻撃力を減算する処理を行う。そして、勝敗が決定したか否かを判断し(ステップS5)、勝敗が決定していない場合(ステップS5のN)はステップS2の戻り、勝敗が決定した場合(ステップS5のY)は処理を終了する。以上で処理が終了する。
(2)三角形の形成処理
次に、図17を用いて、三角形の形成処理について説明する。
まず、1番目のプレーヤキャラクタの指定入力を受け付ける(ステップS30)。次に、2番目のプレーヤキャラクタの指定入力を受け付ける(ステップS31)。次に、3番目のプレーヤキャラクタの指定入力を受け付ける(ステップS32)。
そして、操作位置が初期エリアに戻ったか否かを判断する(ステップS33)。操作位置が初期エリアに戻った場合(ステップS33のY)、操作位置が初期エリアに戻るまでに4番目のプレーヤキャラクタの指定入力を受け付けたか否かを判断する(ステップS3
4)。
操作位置が初期エリアに戻るまでに4番目のプレーヤキャラクタの指定入力を受け付けた場合(ステップS34のY)、1、2、3番目に指定された各プレーヤキャラクタの位置を頂点とする三角形において、1番目に指定されたプレーヤキャラクタの位置(頂点)の角度が所定角度以下であるか否かを判断する(ステップS35)。
1、2、3番目に指定された各プレーヤキャラクタの位置を頂点とする三角形において、1番目に指定されたプレーヤキャラクタの位置(頂点)の角度が所定角度以下である場合(ステップS35のY)、1、3、4番目に指定された各プレーヤキャラクタの位置を頂点とする三角形を形成する(ステップS36)。
一方、操作位置が初期エリアに戻るまでに4番目のプレーヤキャラクタの指定入力を受け付けなかった場合(ステップS34のN)、1、2、3番目に指定された各プレーヤキャラクタの位置を頂点とする三角形を形成する(ステップS37)。
また、1、2、3番目に指定された各プレーヤキャラクタの位置を頂点とする三角形において、1番目に指定されたプレーヤキャラクタの位置(頂点)の角度が所定角度以下でない場合(ステップS35のN)、処理を終了する。以上で処理が終了する。
4.応用例
本発明は、上記実施形態で説明したものに限らず、種々の変形実施が可能である。例えば、明細書又は図面中の記載において広義や同義な用語として引用された用語は、明細書又は図面中の他の記載においても広義や同義な用語に置き換えることができる。
4.1 三角形の形成処理の応用例
本実施形態では、所定周期毎(例えば、1/60秒毎)に、スライド操作で検出される入力方向を検出し、所定周期毎の入力方向v(入力ベクトルv)に基づいて、プレーヤキャラクタを指定し、指定されたプレーヤキャラクタを頂点とする三角形を形成してもよい。
例えば、図18に示すように、接触検出領域(タッチパネル)において最初に検出された入力位置をE1とすると、当該位置E1を含む入力判定領域A1に対応するプレーヤキャラクタPAを1番目に指定されるプレーヤキャラクタとする。
そして、次に、接触検出領域において入力方向(入力ベクトルの向き)が変化した点E2が検出された場合に、当該位置E2を含む入力判定領域A3に対応するプレーヤキャラクタPCを2番目に指定されるプレーヤキャラクタとする。
そして、次に、接触検出領域において入力方向が変化した点E3が検出された場合に、当該位置E3を含む入力判定領域A4に対応するプレーヤキャラクタPDを3番目に指定されるプレーヤキャラクタとする。
このようにして、3つのプレーヤキャラクタPA、PC、PDが順に指定されると、当該プレーヤキャラクタPA、PC、PDの点P1、P3、P4を頂点とする三角形を形成する。
本実施形態では、3番目に指定したプレーヤキャラクタとして入力を受け付けた後に確定入力(3つ目に指定したプレーヤキャラクタPDを指定後、プレーヤが引き続きスライド操作により1番目に指定されたプレーヤキャラクタPAの入力判定領域A1に接触する
入力)を受け付けたタイミングで、三角形を形成(確定)する処理を行う。
このようにすれば、例えば、図18に示すように、プレーヤが、プレーヤキャラクタPBの入力判定領域A2に誤って接触してしまったとしても、プレーヤキャラクタPBを指定することはないので、プレーヤが所望する三角形を形成することができる。
なお、入力方向の変化点は次のように検出する。例えば、所定周期毎のN回目に検出されるベクトルv1とN+1回目に検出されるベクトルv2(連続して検出される2つの入力ベクトルv1、v2)のなす角度が所定角度以上(例えば、15度以上)である場合に、入力方向の変化があったものと判定する。そして、N+1回目に検出されるベクトルv2の始点を変化点として検出する。
4.2 入力判定領域の補正
また、本実施形態では、指定されたプレーヤキャラクタの位置に基づいて入力判定領域を変形させるようにしてもよい。
例えば、図19に示すように、直近に指定入力されたプレーヤキャラクタPAの位置P1を記憶する。そして、直近に指定入力されたプレーヤキャラクタPA以外のプレーヤキャラクタPB〜PFそれぞれの入力判定領域A2〜A6を変形させる。
例えば、プレーヤキャラクタPBの場合、位置P1とプレーヤキャラクタPBの位置P2とを結ぶ線(直線)に沿うように入力判定領域A2を変形させる。例えば、入力判定領域A2を円形から楕円、長方形、線などに変形させる。つまり、入力判定領域A2を位置P1とP2とを結ぶ線上において狭めるように変形させる。
同様に、プレーヤキャラクタPC〜PFの入力判定領域A3〜A6についても、位置P1とプレーヤキャラクタの位置とを結ぶ線に沿うように変形させる。
このようにすれば、プレーヤが意図しないプレーヤキャラクタの指定入力を回避することができ、プレーヤが望むプレーヤキャラクタの指定と三角形の形成を行うことができる。
4.3 他の形状を形成する処理
また、本実施形態では、三角形の形状を形成するゲームについて説明したが、形成する形状は三角形に限らず、図20(A)に示すように、四角形DA10を形成するものでもよいし、図20(B)に示すように、五角形DA11を形成するものであってもよい。また、図示していないが、多角形に限らず、ハート、星などの形状を形成してもよい。
また、プレーヤが形成した形状の種類に応じてプレーヤキャラクタの攻撃力を変動させるようにしてもよい。例えば、ハートの形状が形成できた場合には、三角形の形状を形成したときよりも、プレーヤキャラクタの攻撃力を増大させるようにしてもよい。
4.4 敵キャラクタの攻撃力
本実施形態では、三角形の面積、「辺の長さの合計値」の少なくとも一方に基づいて、敵キャラクタの攻撃力を変動させるようにしてもよい。
例えば、形成された三角形の面積が小さいほど、次に到来する敵キャラクタのターン時において、敵キャラクタの攻撃力の値が低くなるように制御してもよい。また、形成された三角形の「各辺の長さの合計値」が小さいほど、次に到来する敵キャラクタのターン時において、敵キャラクタの攻撃力の値が低くなるように制御してもよい。
また、プレーヤが形成された形状の種類に応じて敵キャラクタの攻撃力を変動させるようにしてもよい。例えば、ハートの形状が形成できた場合には、三角形の形状を形成したときよりも、次に到来する敵キャラクタのターン時において、敵キャラクタの攻撃力を減少させるようにしてもよい。
また、複数の形状が形成された場合であって当該複数の形状が重複する領域に敵キャラクタが存在する場合に、次に到来する敵キャラクタのターン時において、敵キャラクタの攻撃力を減少させる(例えば、0.5倍にする)ように制御してもよい。
4.5 ゲームシステムの応用例
本実施形態のゲームシステムは、端末の処理部100の機能のほぼ全てをサーバ20にて実現する構成としてもよい。
例えば、ゲームシステムはクラウドコンピューティングで実現されるシステムとしてもよい。すなわち、クラウドコンピューティングではサーバ上でプレーヤ毎の情報(プレーヤ情報など)を記憶、管理し、処理を行う。つまり、端末10は、入力部160から入力された各種の入力情報をサーバ20に送信する。そして、サーバ20は、三角形の形状の形成処理などの処理部100の各部の処理を行って、画像を生成するための画像生成用データを生成し、生成した画像生成用データを各端末に対して送信する。ここで、画像生成用データとは、本実施形態の手法により生成された画像を各端末において表示するためのデータであり、画像データそのものでもよいし、各端末が画像を生成するために用いる各種データ(オブジェクトデータ、ゲーム処理結果データ等)であってもよい。また、処理部100の各部の処理を、サーバと端末で分散して実行するようにゲームシステムを構成してもよい。
4.6 三角形の形成処理の応用例(その2)
本実施形態では、プレーヤの誤入力を防止するために、次のように三角形を形成してもよい。
例えば、図21(A)に示すように、各プレーヤキャラクタPA、PB、PCの各位置P1、P2、P3を頂点とする三角形DA4を形成することを望んでいた場合において、プレーヤが意図せずに、入力判定領域A4を接触入力することによりプレーヤキャラクタPDを指定してしまうことを避けるために次のように処理を行ってもよい。
すなわち、まず、本実施形態では、一番目に指定されたプレーヤキャラクタPAの位置P1と三番目に指定されたプレーヤキャラクタPBの位置P2とを結ぶ線上に判定領域ZAを設定する。例えば、位置P1と位置P2とを結ぶ線ZLを中心軸とする幅fの太い線状(帯状)の判定領域ZAを設定する。なお、幅fは、例えば、各プレーヤキャラクタに設定される入力判定領域の直径と同等のサイズ、或いは、当該直径よりも少し大きいサイズとする。
そして、当該判定領域ZA内に、二番目に指定されたプレーヤキャラクタPDの位置P4が位置する場合には、2番目に指定されたプレーヤキャラクタPDの指定を無効とし、1、3、4番目に指定されたプレーヤキャラクタPA、PB、PCの各位置P1、P2、P3を頂点とする三角形DA4を形成するように制御する。
このようにすれば、プレーヤがプレーヤキャラクタPAを指定後、次に誤ってプレーヤキャラクタPDを指定してしまったとしても、プレーヤキャラクタPDの指定をキャンセルすることができ、図21(A)に示すように、プレーヤが求める三角形DA4の形成を
行うことができる。
一方、図21(B)に示すように、当該判定領域ZA内に、二番目に指定されたプレーヤキャラクタPDの位置P4が位置しない場合には、2番目に指定されたプレーヤキャラクタPDの指定を有効とし、プレーヤキャラクタPDを指定したのはプレーヤの意図と判断する。
また、本実施形態では、より確実に誤入力を避けるために、次のように三角形を形成してもよい。つまり、図21(A)に示すように、(ア)1番目に指定されたプレーヤキャラクタPAの位置P1と2番目に指定されたプレーヤキャラクタPDの位置P4を結ぶ線と、P1と3番目に指定されたプレーヤキャラクタPBの位置P2を結ぶ線とがなす角度(内角)θが所定角度以下(例えば、15度以下)である第1の条件を満たし、かつ、(イ)一番目に指定されたプレーヤキャラクタPAの位置P1と三番目に指定されたプレーヤキャラクタPBの位置P2とを結ぶ線上の判定領域ZA内に、二番目に指定されたプレーヤキャラクタPDの位置P4が位置するという第2の条件を満たす場合に、2番目に指定されたプレーヤキャラクタPDの指定を無効とする。また、上述したように、図21(B)に示すように、角度θが所定角度以下ある第1の条件(ア)を満たさず、判定領域ZA内に、二番目に指定されたプレーヤキャラクタPDの位置P4が位置するという第2の条件(イ)を満たさない場合に、プレーヤキャラクタPDの指定を有効とし、プレーヤキャラクタPDを指定したのはプレーヤの意図と判断する。また、図21(C)に示すように、角度θが所定角度以下ある第1の条件(ア)を満たし、判定領域ZA内に、二番目に指定されたプレーヤキャラクタPDの位置P4が位置するという第2の条件(イ)を満たさない場合にも、プレーヤキャラクタPDの指定を有効とし、プレーヤキャラクタPDを指定したのはプレーヤの意図と判断する。また、図21(D)に示すように、角度θが所定角度以下ある第1の条件(ア)を満たさず、判定領域ZA内に、二番目に指定されたプレーヤキャラクタPDの位置P4が位置するという第2の条件(イ)を満たす場合にも、プレーヤキャラクタPDの指定を有効とし、プレーヤキャラクタPDを指定したのはプレーヤの意図と判断する。
なお、本実施形態では、図21(B)(C)(D)に示すように、4つのプレーヤキャラクタPA、PD、PB、PCが指定された場合には、三角形の頂点が特定できないので、三角形が形成されないように制御しているが、4つのプレーヤキャラクタが指定された場合には、1、2、3番目に指定された3つのプレーヤキャラクタの位置を頂点とする三角形を形成してもよい。
4.7 三角形の形成処理の応用例(その3)
本実施形態では、例えば、図15(A)に示すように、プレーヤキャラクタPCが1番目に指定され、プレーヤキャラクタPAが2番目に指定され、プレーヤの誤入力によりプレーヤキャラクタPDが3番目に指定され、プレーヤキャラクタPBが4番目に指定され、初期エリア(入力判定領域A3)に戻るスライド操作が行われた場合にも、プレーヤキャラクタPC、PA、PBの各位置P3、P1、P2を頂点とする三角形DA4を形成するように制御してもよい。
例えば、本実施形態では、4番目のプレーヤキャラクタPBが指定されたタイミングで、2番目に指定されたプレーヤキャラクタPAの位置P1と3番目に指定されたプレーヤキャラクタPDの位置P4とを結ぶ線と、2番目に指定されたプレーヤキャラクタPAの位置P1と4番目に指定されたプレーヤキャラクタPBの位置P2を結ぶ線とがなす角度(内角)θが所定角度以下(例えば、15度以下)であるか否かを判断し、角度θが所定角度以下である場合には、3番目に指定されたプレーヤキャラクタPDの指定を無効とし、1、2、4番目に指定されたプレーヤキャラクタPC、PA、PBの各位置P3、P1
、P2を頂点とする三角形DA4を形成するように制御する。
このようにすれば、プレーヤが誤ってプレーヤキャラクタPDを指定してしまったとしても、プレーヤキャラクタPDの指定をキャンセルすることができ、図15(A)に示すように、プレーヤが求める三角形DA4の形成を行うことができる。
また、本実施形態では、図21(A)に示すように、プレーヤキャラクタPCが1番目に指定され、プレーヤキャラクタPAが2番目に指定され、プレーヤの誤入力によりプレーヤキャラクタPDが3番目に指定され、プレーヤキャラクタPBが4番目に指定され、初期エリア(入力判定領域A3)に戻るスライド操作が行われた場合にも、判定領域ZAを設定し、三角形DA4を形成してもよい。
例えば、図21(A)に示すように、4番目のプレーヤキャラクタPBが指定されたタイミングで、2番目に指定されたプレーヤキャラクタPAの位置P1と4番目に指定されたプレーヤキャラクタPBの位置P2とを結ぶ線上に判定領域ZAを設定する。例えば、位置P1と位置P2とを結ぶ線ZLを中心軸とする幅fの太い線状(帯状)の判定領域ZAを設定する。
そして、当該判定領域ZA内に、3番目に指定されたプレーヤキャラクタPDの位置P4が位置する場合には、3番目に指定されたプレーヤキャラクタPDの指定を無効とし、1、2、4番目に指定されたプレーヤキャラクタPC、PA、PBの各位置P3、P1、P2を頂点とする三角形DA4を形成するように制御する。
このようにすれば、プレーヤがプレーヤキャラクタPAを指定後、次に誤ってプレーヤキャラクタPDを指定してしまったとしても、プレーヤキャラクタPDの指定をキャンセルすることができ、図21(A)に示すように、プレーヤが求める三角形DA4の形成を行うことができる。
なお、本実施形態では、4番目のプレーヤキャラクタPBが指定されたタイミングで、2番目に指定されたプレーヤキャラクタPAの位置P1と3番目に指定されたプレーヤキャラクタPDの位置P4とを結ぶ線と、2番目に指定されたプレーヤキャラクタPAの位置P1と4番目に指定されたプレーヤキャラクタPBの位置P2を結ぶ線とがなす角度(内角)θが所定角度以下(例えば、15度以下)である第1の条件を満たし、及び、判定領域ZA内に、3番目に指定されたプレーヤキャラクタPDの位置P4が位置するという第2の条件を満たす場合に、3番目に指定されたプレーヤキャラクタPDの指定を無効にしてもよい。
4.8 三角形の形成処理の応用例(その4)
本実施形態では、原則として、4つのプレーヤキャラクタが指定された場合には、三角形の頂点が特定できないので、三角形が形成されないように制御しているが、次のように無効と判定されるプレーヤキャラクタが1つ存在する場合には、三角形を形成してもよい。
例えば、図15(A)に示すように、プレーヤキャラクタPBが1番目に指定され、プレーヤキャラクタPCが2番目に指定され、プレーヤキャラクタPAが3番目に指定され、プレーヤの誤入力によりプレーヤキャラクタPDが4番目に指定され、初期エリア(入力判定領域A2)に戻るスライド操作が行われた場合にも、プレーヤキャラクタPB、PC、PAの各位置P2、P3、P1を頂点とする三角形DA4を形成するように制御してもよい。
例えば、本実施形態では、4番目のプレーヤキャラクタPDが指定されたタイミングで、3番目に指定されたプレーヤキャラクタPAの位置P1と4番目に指定されたプレーヤキャラクタPDの位置P4とを結ぶ線と、3番目に指定されたプレーヤキャラクタPAの位置P1と1番目に指定されたプレーヤキャラクタPBの位置P2を結ぶ線とがなす角度(内角)θが所定角度以下(例えば、15度以下)であるか否かを判断し、角度θが所定角度以下である場合には、4番目に指定されたプレーヤキャラクタPDの指定を無効とし、1、2、3番目に指定されたプレーヤキャラクタPB、PC、PAの各位置P2、P3、P1を頂点とする三角形DA4を形成するように制御する。
このようにすれば、プレーヤが誤ってプレーヤキャラクタPDを指定してしまったとしても、プレーヤキャラクタPDの指定をキャンセルすることができ、図15(A)に示すように、プレーヤが求める三角形DA4の形成を行うことができる。
また、本実施形態では、図21(A)に示すように、プレーヤキャラクタPBが1番目に指定され、プレーヤキャラクタPCが2番目に指定され、プレーヤキャラクタPAが3番目に指定され、プレーヤの誤入力によりプレーヤキャラクタPDが4番目に指定され、初期エリア(入力判定領域A2)に戻るスライド操作が行われた場合にも、判定領域ZAを設定し、三角形DA4を形成してもよい。
例えば、図21(A)に示すように、4番目のプレーヤキャラクタPDが指定されたタイミングで、3番目に指定されたプレーヤキャラクタPAの位置P1と1番目に指定されたプレーヤキャラクタPBの位置P2とを結ぶ線上に判定領域ZAを設定する。例えば、位置P1と位置P2とを結ぶ線ZLを中心軸とする幅fの太い線状(帯状)の判定領域ZAを設定する。
そして、当該判定領域ZA内に、4番目に指定されたプレーヤキャラクタPDの位置P4が位置する場合には、4番目に指定されたプレーヤキャラクタPDの指定を無効とし、1、2、3番目に指定されたプレーヤキャラクタPB、PC、PAの各位置P2、P3、P1を頂点とする三角形DA4を形成するように制御する。
このようにすれば、プレーヤがプレーヤキャラクタPAを指定後、次に誤ってプレーヤキャラクタPDを指定してしまったとしても、プレーヤキャラクタPDの指定をキャンセルすることができ、図21(A)に示すように、プレーヤが求める三角形DA4の形成を行うことができる。
なお、本実施形態では、4番目のプレーヤキャラクタPDが指定されたタイミングで、3番目に指定されたプレーヤキャラクタPAの位置P1と4番目に指定されたプレーヤキャラクタPDの位置P4とを結ぶ線と、3番目に指定されたプレーヤキャラクタPAの位置P1と1番目に指定されたプレーヤキャラクタPBの位置P2を結ぶ線とがなす角度(内角)θが所定角度以下(例えば、15度以下)である第1の条件を満たし、及び、判定領域ZA内に、4番目に指定されたプレーヤキャラクタPDの位置P4が位置するという第2の条件を満たす場合に、4番目に指定されたプレーヤキャラクタPDの指定を無効にしてもよい。
5.複数の形状形成や複数の敵キャラクタが存在する場合の攻撃処理について
本実施形態では、プレーヤの一のターンにおいて、複数の形状を形成して複数の敵キャラクタを攻撃してもよい。
例えば、図22に示すように、プレーヤの一のターンにおいて、敵キャラクタQAを囲い込むような三角形DA6を形成し、敵キャラクタQBを囲い込むような三角形DA7を
形成し、敵キャラクタQA、QBを囲い込むような三角形DA8を形成して、攻撃処理を行ってもよい。
つまり、プレーヤのスライド操作に基づきプレーヤキャラクタPA、PB、PCが順に指定され、当該プレーヤキャラクタPA、PB、PCの点P1、P2、P3を頂点とする最初の三角形DA6が形成されたとする。
そして、三角形DA6形成後、プレーヤが継続して素早くスライド操作することにより、最初に指定されたプレーヤキャラクタPAに対応づけられた制限時間内に、プレーヤキャラクタPA、PD、PCが順に指定され、当該プレーヤキャラクタPA、PD、PCの点P1、P4、P3を頂点とする三角形DA7が形成されたとする。
そして、三角形DA7形成後、プレーヤが継続して素早くスライド操作することにより、引き続きプレーヤキャラクタPAに対応づけられた制限時間内に、プレーヤキャラクタPA、PB、PDが順に指定され、当該プレーヤキャラクタPA、PB、PDの点P1、P2、P4を頂点とする三角形DA8が形成され、制限時間が終了したとする。
すると、まず、三角形DA6の領域内に敵キャラクタQAが存在するので、三角形DA6の頂点P1、P2、P3に対応するプレーヤキャラクタPA、PB、PCが、敵キャラクタQAを攻撃する処理を行う。
また、三角形DA7の領域内に敵キャラクタQBが存在するので、三角形DA7の頂点P1、P4、P3に対応するプレーヤキャラクタPA、PD、PCが、敵キャラクタQBを攻撃する処理を行う。
更に、三角形DA8の領域内に敵キャラクタQA、QBが存在するので、三角形DA8の頂点P1、P2、P4に対応するプレーヤキャラクタPA、PB、PDが、敵キャラクタQA及び敵キャラクタQBを攻撃する処理を行う。
また、図22の例では、三角形DA6、DA8が重複する領域に敵キャラクタQAが存在するので、三角形DA6の頂点P1、P2、P3に対応するプレーヤキャラクタPA、PB、PCの攻撃力を増大し(例えば、1.5倍に増大し)、三角形DA8の頂点P1、P2、P4に対応するプレーヤキャラクタPA、PB、PDの攻撃力を増大(例えば、1.5倍に増大)してもよい。また、三角形DA7、DA8が重複する領域に敵キャラクタQBが存在するので、三角形DA7の頂点P1、P4、P3に対応するプレーヤキャラクタPA、PD、PCの攻撃力を増大し(例えば、1.5倍に増大し)、三角形DA8の頂点P1、P2、P4に対応するプレーヤキャラクタPA、PB、PDの攻撃力を増大(例えば、1.5倍に増大)してもよい。
このように、本実施形態では、プレーヤは、複数の敵キャラクタそれぞれを囲い込むような三角形を形成すること、多くの三角形を形成すること等を考えながら戦略的にゲームプレイすることができる。