| 2008/01/20(Sun) 02:18:27 編集(投稿者)
#イベントコマンドなのか、ユニットコマンドなのかが紛らわしい箇所を修正しました。
まただいぶ空きました。中箱です。
● まず、議論の目標、到達点の再確認から。
最終的には 「複数のユニットが一つのマスに存在し、一塊になって行動(戦闘など)を行う」ことが、何らかの方法で可能になるような機能拡張案 を目指したいと考えています。 (以下、「複数のユニットが一つのマスで重なって、一塊になって行動できる状態」を、「グループ状態」呼びます)
例えば、SRW二次&三次αにおける小隊システムや、SDガンダムGジェネレーションシリーズ(の一部)におけるスタック制 …などの再現が容易になるような機能拡張案、と考えていただければ。
"何らかの方法で" ですので、案の内容は ・本体機能として「グループ状態」が完全にサポートされるような新機能の仕様案 でも ・単体では「グループ状態」を実現できない、いくつもの新機能(イベントコマンドや関数、ラベル、状態など) からなる案(新機能を用いたサブルーチンを利用することで実現が可能となる) でも良いということです。もちろん両方が混じったようなものでも
また、あくまでも"最終的に"ですので、一度に全部をリクエストするには限らず、 案が切り分け可能であれば、それぞれ個別にリクエストしても良いでしょう。
同時に、実現できる「グループ状態」の仕様はシナリオ作者による調整幅が広いものであって欲しい所です。 (小隊システムとスタック制を比べるだけでも、ずいぶん仕様は違いますし。 個人的な意見としては、例えば「小隊システムを実現するためだけの新機能」のように拡張性に乏しそうな機能ではイマイチだなとも)
● まず、「グループ状態」の実現には ・「グループ状態」の場合、どのようなルールで戦闘が行われるか はもちろん必要ですが、同時に ・どのようにして「グループ状態」を作成するか も無くてはなりません。
さて、既存のSLGやSRPGの中にはユニットを「グループ状態」にすることが可能なものがあるわけですが、 私が思いついた主なものとしては
1.「第二次&三次SRWα」の小隊システム@PS2 2.「バハムートラグーン」@SFC(スクウェア) 3.「SRWOGs」のツインユニット@PS2 4.「SDガンダムエモーショナルジャム」@WS 及び「Gジェネレーションシリーズ(WS・GBA・DS版)」のスタック 5.「ポケットキング」@GBC、「サモナーズリネージュ(多分テイルズシリーズのうち)」@GBA(ナムコ)
あたりが「グループ状態」が存在するものに該当するでしょう。 ("主な"の割に一部微妙なマイナーゲーが混じってますがまあ)
※注:2についてはうろ覚えなので間違いがあるかも。 3にはOG外伝も入るかもしれませんが、未プレイなので割愛。
ここで、"どのようにして「グループ状態」を作成するか" に着目し、 これら1〜5のそれが、今のSRCの機能で実現可能かどうかという面から見てみると
○1&2 これらにおける「グループ」はインターミッションで作り、マップ中での組み替えは原則として不可能です。 インターミッション中であれば、サブルーチンでグループの組み換えシステムを再現することは十分に可能でしょう。 (もちろん、既存のイベントコマンドによるサブルーチンではなくて、グループを作成するためのインターミッションコマンドの新設を案に含めるのもアリだと思いますが)
これに対して、3〜5はマップ中で「グループ」の構成メンバーを変更させる事ができますし、変更する事が前提で作られています。 ○3 「グループ」の作成&解散はユニットコマンドで実行するものですので現状で再現可能かと。 ○4&5 問題はこれらの場合です。 これらの作品における「グループ」は、 "すでに味方ユニット(グループ)が存在するマスに、他の味方が移動先に指定して進入する" ことによって作成されます。
この "すでに他のユニットがいるマスを(移動先に)指定する" を、現行の機能で再現することは (不可能では無いと見ていますが)かなり難しい、というか面倒な事です。
● そこで、目標である 「複数のユニットが一つのマスに存在し、一塊になって行動(戦闘など)を行う」ことが、何らかの方法で可能になるような機能拡張案 の手始めとして何がもっとも良さそうかと考えた結果、 まず上の4&5に見られる "すでにユニットがいるマスを指定する" 機能を実現するような案から手をつけてはどうかなと。
なぜそこからか、という理由については、
・「グループ状態」での戦闘ルール部分は、論点が膨大である事が予想され、議論が長引くであろうこと。 ・戦闘を「グループ状態」の場合に拡張するよりも、援護行動など、先に拡張しておくのが望ましそうなものがあること。
という点から、戦闘周りは、手の付けはじめとして適切では無いと考えるからです。
○ また、 "すでにユニットがいるマスを指定する" ことが可能になれば、 「グループ状態」とも、既存のものとも違ったゲーム性を持つシナリオを作る(既存のSLG,SRPG再現の助けになる)ことが可能になるでしょう。
既存のSLG,SRPG、と書きましたが、それは グループ状態にはならないが、 "すでにユニットがいるマスに進入を試みる" ことが許されているものです。
例えば、 「ガシャポン戦記1〜4」@FC、ディスクシステム(バンダイ) などでは(ずいぶん古いゲームですが…) "敵対勢力の存在するマスに進入を試みる" ことで戦闘が発生します。 (戦闘そのものはアクションであったりコマンドバトルだったりしますが。 ちなみにこのシリーズの場合、グループ状態にはなりませんので、戦闘後は侵入した側・侵入された側双方が一定のルールによって必要であれば再配置されます。
また、 「ファミコン・ゲームボーイウォーズシリーズ」等においては、 同じ種類の味方ユニットが存在するマスに進入する事で、二つの部隊ユニットを一つの部隊に合体させる事が可能になっています。 (※ファミコンウォーズシリーズのGBA以降のものには触れてませんが)
● "すでにユニットがいるマスを指定する" ことを実現するための具体案ですが。
私案としては
・指定したユニットが、指定した座標に(、指定した移動方法で)、次の移動で到着可能であるかどうかを返す関数「Reach(仮)」 (オプションとして、指定座標に味方/敵がいても、その座標のユニットのみ無視するようなものを設定可能にする)
・指定したユニットが、指定した移動方法で移動しようとしたときの移動可能範囲を表示する(+マップ上をクリックで座標取得)イベントコマンド「ShowMoveRange(仮)」 (※これは、現在別ツリー(No5638〜)にて意見交換が行われているAppointコマンド案に追加してもらうように提案するのもアリかも)
・デフォルトで表示されてしまうユニットコマンド(移動、攻撃、スペシャルパワー、特殊能力一覧、武装一覧など)を、強制的にユニットコマンドに表示させないようにする 非表示特殊状態の新設、もしくはDisableコマンドあたりの拡張。
のような感じのものを考えています。
この案は、"すでに他のユニットがいるマスを(移動先に)指定する" を可能にすることが元の目的だったわけですが、 既存の移動コマンドの拡張 という形はではなく、 関数、イベントコマンド、特殊状態の拡張・追加等 という内容になっています。
そのため、これらだけでは「グループ状態」は実現できません。 けれどもこれらは「グループ状態」を実現するためには役立つものです。 それに、移動コマンドの拡張であれば移動以外には使えませんが、関数・イベントコマンドであれば、それを各種イベントラベル内で利用する事ができます。
また、現状では移動関連の情報を得るイベントコマンドや関数が殆ど存在しません。
例えば、ユニットの今の移動可能範囲がどうなっているかは、移動コマンド(味方)や移動範囲コマンド(味方以外)によってプレイヤーは確認できます。 しかし、その表示を強制的に表示させることも、指定した地点への移動の可否をシナリオ側で参照することも不可能になっています。 もちろんサブルーチンを組めば同様の情報を得ることは理論上可能でしょうけれど、(繰り返しになりますが)かなりの手間が予想されます。
つまりプレイヤーが普通に確認できる情報を得るために、シナリオ側は複雑なサブルーチンが必要なわけで、これには違和感を感じます。
プレイヤーが確認できるのですから、基本的に特別新しい機能ではありません。 ですから、その情報を取得・表示するためのイベントコマンド・関数を実装する手間という面においては、まったく新規の機能を追加する場合に比べれば少なくて済む……んじゃないかな、と。 …まあ、この実装の手間に関してはあくまでも予想と希望的観測なのですが。
以上が、上のような形の私案となっている理由です。
● えー、長いですし、出発点と提示した私案がかけ離れているようにも見えてしまいますので、 最後に短くまとめておきます。
☆「グループ状態」を実現することを目指したい。(とりあえずの最終目標) ☆「グループ状態」を実現するためには、 "「グループ状態」はどういう動作をするのか" と、 "どうやって「グループ状態」を作るのか" の両方が必要。 ☆「グループ状態」の動作についての議論よりも先に "「グループ状態」を作る" 部分から考えたい。 ☆ "「グループ状態」を作る" ためには "すでにユニットがいるマスを(移動先として)指定する" 新機能が欲しい。 ☆"すでにユニットがいるマスを(移動先として)指定する" 機能があれば、「グループ状態」以外のシステムの再現なども可能になる。
☆ "すでにユニットがいるマスを指定する" ための私案としては、関数・イベントコマンド・状態の追加&拡張を。(議論の開始点?) ☆案が、素直な "移動コマンドの拡張" ではなくて、 "関数やイベントコマンド" で構成されているのは、 一、その方が、実装された場合の応用範囲が広くなるから 二、現状、シナリオ側で移動関連の情報を得て利用することができないから 三、プレイヤーは確認できる情報なので、実装の手間が、まったくの新機能に比べれば軽いだろうと予想するから などの理由から。
以上のような感じになります。
● いまだ分かり辛くなっている点や、内容についての意見等ありましたらよろしくお願いします。 では。
|