SRC意見交換掲示板Mk2
(現在 過去ログ54 を表示中)

HOME HELP 新規作成 新着記事 トピック表示 検索 掲示板新着情報RSS配信新着情報 過去ログ

[ 最新記事及び返信フォームをトピックトップへ ]

■5811 / inTopicNo.1)  「グループ状態」を可能とする機能追加案ツリー
  
□投稿者/ 中箱 -(2008/03/01(Sat) 01:04:14) [ID:TdSzoAHN]
    2008/03/04(Tue) 04:55:35 編集(投稿者)
    2008/03/04(Tue) 00:36:55 編集(投稿者)
    2008/03/04(Tue) 00:35:33 編集(投稿者)
    2008/03/01(Sat) 01:08:17 編集(投稿者)
    #3/4 5:00ごろ本文追加

    No5661〜の、『複数のユニットが重なっている状態を可能にする機能追加案について』ツリーの続きとなります。


    書いては削り、削っては消し、を繰り返している間にずいぶんと間を空けた挙句、
    前ツリーが埋まりきってしまいました。すいません


    以下本文
    =====
    「グループ状態」を可能にするツリーのいくつか目になります。


    「複数のユニットが一つのマスで重なって、一塊になって行動できる状態」のことを「グループ状態」と呼んでいます。
    市販ゲームの例を挙げれば、
     ・SRW二次&三次αにおける「小隊」
     ・SRWOGsにおける「ツインユニット」
     ・SDガンダムGジェネレーションシリーズ(の一部)における「スタック」
    などが「グループ」に相当します。
    (割とメジャーなタイトルで使われており、かつ私もある程度把握しているのでこれら三つを挙げています)



    最終的な目標・到達点は
     「グループ状態であるユニット群が行動(戦闘など)を行う」ことが、
     何らかの方法で可能になるような機能拡張案群をリクエストする
    です。

     小隊システムやスタック制などをSRC上で再現するために必要な新機能(きっと複数)をリクエストする
    …と考えていただいても、とりあえず概ね問題ありません。




    リクエストの形式、というか案の内容は、
     ・本体機能として「グループ状態」が完全にサポートされるような新機能の仕様案
    でも
     ・単体では「グループ状態」を実現できない、いくつもの新機能(イベントコマンドや関数、ラベル、状態など)
      からなる案(新機能を用いたサブルーチンを利用することで実現が可能となる)
    でも良いと考えます。

    後者の場合は、新機能案の一部を単体でリクエストしても良いでしょう。
    (もちろん、単体でもその機能の存在価値が認められるようなものならば、ですが)




    さて、グループ状態とは「複数のユニットが一つのマスで重なっている」ことだと最初に書きました。
    しかし現在のSRCにおける仕様は
     「マップ上の1マスには1体のユニットしか存在できない」
    です。

    では、グループ状態を実現するにはどうすれば良いかと言えば、
     ・仕様を変えて、1マスに2対以上のユニットが存在できるようにする。
     ・仕様は変えない。ダミー特殊能力やSetStatu、サブルーチンなどを駆使して、
      「まるで1マスに2体以上のユニットが存在するかのような動作」を実現する。
    の二通りが考えられます。


    仕様を変える場合、つまり1マスに2体以上存在できるようにする場合、
    既存の機能との兼ね合いで決めておかなければならない点が幾つも存在します。
    「どういう時に2体以上存在することが許されるのか」や、
    「影響が予想される、既存のイベントコマンド・関数・ユニットコマンドなどの主な変更点」
    などについてです。


    …えー、正直、この「1マス1体まで」の原則を変更するという方針を取る場合、
    影響範囲が広すぎてどうするべきか、どこまで考えるべきかをまとめられていません。


    そこで、いずれそれをまとめるためにも、まずは
     ===
     ★ 「1マスに1体」という仕様は変えない ★
     ===
    ことを大前提にし、
    現状の機能でグループ状態はどこまで実現可能で、どこに無理があるのか、
    無理な部分を可能にするにはどんな機能が必要なのか、
    を考えてみました。



    当たり前ですが影響範囲が広いので、ここには結論のみ書いておきます。
    説明や理由などは別記の補足記事を参照してください。


    なお、特に何も書かなければ、
     ★「1マスに1体」という仕様は変えない
     ★グループには参加しているが、マップ上に表示されている「先頭以外のユニット」は
      「離脱」or「待機」状態にしておく。
     ★戦闘は、ほぼ全て攻撃・攻撃後・破壊ラベル中のAttackコマンドで代用する。
     ★CPUの行動はとりあえず考慮しない。(考慮すると、ほとんど何も再現できなくなりそう)
    という前提で考えています。


    = = = = = =

    ■1.グループを作成(解散)する方法
     ▲1−A.インターミッション中に作成・解散を行う場合(小隊システム)
       ○再現可能
     ▲1−B.戦闘マップ上で作成・解散を行う場合
      ★1−B−a.ユニットコマンドで作る(ツインユニット)
       ○再現可能(乾さんがNo5730一例を示されています)
      ★1−B−b.移動して作る(スタック制)
       △不可能ではないが面倒。
       △プレイヤーの操作感が悪そう
    →「機能追加が望ましい」
      ★1−B−o.その他の方法で作る?

    = = = = = =

    ■2.グループ状態における動作(戦闘・移動以外)
     ▲2−1.CPUの行動パターンの設定
       △ある程度は可能?(大まかな考え方はNo5693のマガツさんが)
    →汎用性が高いので「別件として別ツリーで議論」

     ▲2−2.グループの先頭(アイコン表示されるユニット)や、グループ内における順番の設定。
       ○再現可能

     ▲2−3.先頭以外のユニットの扱い。シナリオ作者視点
    ☆☆前提☆☆「待機」「離脱」で代用
       ×@シナリオ作者:イベントファイルを書く時に注意しなければならない点が生じる。
       ×@プレイヤー :部隊表やSP一覧への影響が避けられない

     ▲2−4.先頭以外のユニットの扱い。プレイヤー視点
      ★2−4−1.ステータス確認方法
       △@プレイヤー:少し手間が必要
      ★2−4−2.SP・変形・アビリティ一覧などユニットコマンドの使用方法
       △不可能ではないが面倒(SP・武器・アビリティ一覧を再現する必要が)
       △@プレイヤー:手間とユニットコマンドが増える
      ★2−4−3.部隊表での扱い、探し方
      ★2−4−0.他

     ▲2−5.攻撃対象選択時の制限
      デフォルトのユニットコマンド「攻撃」が表示されないが、先頭以外のユニットが攻撃可能な場合。
       △ユニットコマンドで代用するにしても、表示・非表示の条件が面倒

     ▲2−6.射程0アビリティの扱い
      同じグループのユニットにのみ使用可能なアビリティが欲しい場合です。

       ○? ダミー属性と使用イベントで一応対応可能?
       △シナリオ作者:使用イベントラベルをアビリティそれぞれに用意しないといけない。

     ▲2−0.他

    = = = = = =

    ■3.グループで移動する場合のルール
     ▲3−1.移動力の変化(移動力の違うユニットがグループを組んだ場合)
       ○面倒だが、可能。
     ▲3−2.移動タイプや移動可能地形の変化(高度が違ったり、移動タイプの違うユニットが同グループにいる場合)
       ×再現は困難。
    →移動可能地形の変化ルール次第で、新機能が不可欠
     ▲3−0.他

    = = = = = =

    ■4.グループ戦闘のルール

    ☆☆前提☆☆ ほぼ全て、攻撃・攻撃後・破壊ラベル中のAttackコマンドで代用する。
       ×シナリオ作者:シナリオ中で、攻撃・攻撃後・破壊ラベルが使いづらくなる。(ラベルの実行順番の関係で生じる問題です)
       ×シナリオ作者:使用・使用後・損傷率・破壊・全滅ラベルがほとんど使えなくなる。(Attackコマンドで代用することによる問題)
    →不可能ではないが、「機能拡張が望ましい」

     ▲4−1.グループ内のどの相手に攻撃をしかけるかを選択する方法
       ○可能
     ▲4−2.先頭以外のユニットに攻撃をする場合の、予測命中&ダメージの確認方法
       △不可能ではないが面倒
     ▲4−3.先頭以外の攻撃・反撃方法の決定方法
       ○可能
     ▲4−4.攻撃順番の設定方法
       ○可能
     ▲4−5.グループ内での援護攻撃の再現
       ○援護全部をAttackコマンドで代用すれば可能
     ▲4−6.グループ内で援護防御が発生することの再現
       ○? 「みがわり」で代用すれば大体可能?
     ▲4−7.グループ全体への攻撃
       △シナリオ作者:武器にペナルティが付いている場合などの対応が手間
     ▲4−8.マップ攻撃
       △シナリオ作者:武器にペナルティが付いている場合などの対応が手間
     ▲4−9.合体攻撃
       ×シナリオ作者:データ側の対応が不可欠。パートナーがその攻撃を使用可能かどうかの判定が困難では?
     ▲4−10.命中率・ダメージへの補正
       ○可能
     ▲4−11.グループ全体に適用される(防御)特殊能力
       △? シナリオ作者:データ側の準備が不可欠。攻撃を受けたユニットとENを消費する機体が別になる場合の対応など
     ▲4−12.戦闘結果、メッセージの表示。戦闘アニメの表示
       ○大きな変更・拡張は不要
       (Attackコマンドで代用する場合。戦闘ルール全般の機能拡張を行うなら影響大)
     ▲4−0.他

    = = = = = =


    とりあえず、今回はこれの提示まで。
    密度はどうあれ、補足を含めるとかなりの分量になってしまっていますので。

    これで具体的な機能拡張案にまで話を続けると、
    その案にばかり目を奪われて、他の部分を読み飛ばしてしまう方が出ないとも限りませんし。


    ということで、No5721で提示した私案はとりあえず保留とさせていただきます。




    繰り返し気味になりますが、
    範囲が膨大なため考察できていない部分やかなり適当な部分があります。

    それぞれの点について、補足記事でもなお足りない部分や、間違い・異論などがあれば是非。


    …ただ、その際に「解釈」はなるべく少なめにお願いします。
    こちらの意図とは違う解釈の上での意見ですと、
    そのせいで、お互いの言っていることが全く噛み合わなくなる恐れがありますので。


    論理的に繋がらないように見えたりした場合は、お互いが想定している前提が違っているのかもしれません。
    (単なる私のミスかもしれません)

    特に、意味が分からない・通じないなどの箇所があれば、
    手間かもしれませんがまずは、その通じない箇所と、「解釈」が合っているかどうかの確認、をして欲しいのです。

    そして、「解釈」をした上での意見であれば、一緒に「解釈」の内容も示していただきたいなと。


    よろしくお願いします
    では。
引用返信/返信 削除キー/
■5815 / inTopicNo.2)  グループ状態の再現可能範囲について・詳細
□投稿者/ 中箱 -(2008/03/04(Tue) 04:53:20) [ID:TdSzoAHN]
    現状の機能でグループ状態がどこまで実現可能で、どこに無理があるのか、の微詳細版です。


    親記事にも書いていますが、範囲が膨大なため考察できていない部分やかなり適当な部分があります。
    ご了承ください。


    ■1.グループを作成(解散)する方法
    グループの作成(解散)を行うタイミングで大きく二つに分けて考えます

     ▲1−A.インターミッション中に作成・解散を行う場合
    データにダミー特殊能力など(小隊システムなら、ユニットのコストとか小隊攻撃用武器とか)を準備しておけば、
    かなり自由にグループ作成ルールを設定できるでしょう。

     ▲1−B.戦闘マップ上で作成・解散を行う場合
    この場合、マップ上でどのようにして作成するかで、さらに分ける必要があります。
      ○3体以上が合体する時のように、条件を満たしたときに出現するユニットコマンドで合流してグループを作る
      ○2体が合体する時のように、合流する相手ユニット(グループ)上に移動してグループを作る

      ★1−B−a.ユニットコマンドで作る
    ユニットコマンドは、ユニットコマンドラベルを用いることでかなり自由に設計できます。問題なさげ

      ★1−B−b.移動して作る
    この場合、
    "すでに味方ユニット(グループ)が存在するマスに、他の味方が移動先に指定して進入する"
    ことによって作成するわけですが、
    これを再現することは、現行の機能ではかなり難しい(というか面倒)でしょう。


    ■2.グループ状態における動作(戦闘・移動以外)

     ▲2−1.CPUの行動パターンの設定
    現行機能である程度可能だと思われますが完全対応は難しいですし、かなりの手間がかかるでしょう。

    5693,5694を受けて5702で書いたとおり  
     「グループ状態に限らず汎用性が高い話題なので、別議題として別ツリーで議論する」
    が妥当だと考えます。


     ▲2−2.グループの先頭や、グループ内における順番の設定。
    「先頭とそれ以外」や「先頭、2番目、3番目…」「前衛と後衛」など色々考えられそうですが、
    ユニットコマンドラベルとダミー特殊能力を用いれば現行の機能で可能でしょう。


     ▲2−3.先頭以外のユニットの扱い。シナリオ作者視点
    「1マス1体」の原則は変えないことを前提として考えますから、
    「先頭以外のユニットをどうしておくか」についても考える必要があります。

    具体的には、「先頭以外のユニットを引数にしてStatus関数を読んだら何が返って来るか」です。
    これは、Foreachを初めとする幾つものイベントコマンドや、部隊表での表示に影響します。

    考えられる方法は
     ・出撃しているが、マップ上には見えない新しいStatusを追加する
     ・マップ上に見えなくとも、Status関数の返り値が「出撃」になる方法を追加する
     ・機能追加は行わず、「待機」か「離脱」で代用する
    です。

      ★2−3−A.新しいStatusを追加する
      ★2−3−B.「出撃」の範囲を拡張する
    どちらも、「グループ状態を実現するため」は、リクエストの理由として妥当ではないでしょう。
    (「1マス1体」の仕様を変えるのであれば、それに伴って必要となる機能拡張なんでしょうけれど)
    リクエストするならば、この機能単独での使い道と理由が必要になるんじゃないかなと。


      ★2−3−C.「待機」か「離脱」で代用する
    これこれで、代用ですからどうしても不都合なところが出ます。

    グループ状態を使ったシナリオを作成する場合には
    必ず、「先頭以外にいるのを待機(離脱)で代用している」のか「普通に待機(離脱)している」のかを区別しながらイベントを作成しなければなりません。
    (例えば、「待機」で代用した場合は、Organizeを行う場合に「待機で代用している先頭以外のユニット」をその都度除外しなきゃダメです)

    プレイヤーから見れば、部隊表から先頭以外のユニットを確認することができません。
    SP一覧からも除外されます。SP夢も困ります。
    (シナリオ作者がそれらの代用品を用意することも可能でしょう。
     部隊表やSP一覧の仕様を拡張するのも、選択肢としてはアリなのかもしれませんが…)



    色々と都合の悪い点を挙げましたが、2-3-Cの方法で可能なことは2-3-A,Bでも可能でしょうから、
    以下は特に断りが無い限り、 「待機」か「離脱」で代用する ことを前提としておきます。


     ▲2−4.先頭以外のユニットの扱い。プレイヤー視点
      ★2−4−1.ステータス確認方法
    ユニットコマンドで確認してもらうことになるかなと。
    カーソルを合わせるだけに比べればだいぶ確認し辛くなりますが、

      ★2−4−2.SP・変形・アビリティ一覧などユニットコマンドの使用方法
    これについても、確認するためのユニットコマンドを用意することである程度対応可能かな、と。
    (SP一覧・武器一覧・アビリティ一覧などをサブルーチン内で再現する必要があるでしょう)

    先頭のユニットさえ任意に変更可能であれば「プレイヤーの操作に手間がかかるようになるだけ」とも言えそうです。
    (…それが一番気にするべきことなのかもしれませんが)

      ★2−4−3.部隊表での扱い、探し方
       ●2−4−3−A.部隊表的な機能を持つものを再現する
       ●2−4−3−B.部隊表の機能を拡張する

     ▲2−5.攻撃対象選択時の制限
    攻撃相手グループ先頭ユニットが持つ無効化能力や、ユニットの射程の関係で発生します。
    ユニットコマンドで代用するにしても、表示・非表示の条件が面倒です。

     ▲2−6.射程0アビリティの扱い


    ■3.グループで移動する場合のルール
    グループに含まれるユニットによって、移動タイプや移動力が変化することがあります

     ▲3−1.移動力の変化(移動力の違うユニットがグループを組んだ場合)
    アイテムを付け替えして調整すれば多分可能。

     ▲3−2.移動タイプや移動可能地形の変化(高度が違ったり、移動タイプの違うユニットが同グループにいる場合)
    飛行ユニットと飛行不可ユニットが同グループの時、
    飛行ユニットが先頭だと不都合が生じます(空地形に進入可能になる)

    これは、現行の移動コマンド&特殊能力などでは対応が難しそうです。


    ■4.グループ戦闘のルール
    現在、一度の戦闘で攻撃を行えるユニットは3体が限界ですが
    グループ状態を再現するためには、今よりもかなり多くのユニットが戦闘に参加する事を可能にする必要があります。

    グループ同士の戦闘を現機能で再現しようとした場合、
    ほとんどの戦闘は 攻撃・攻撃後ラベル内で、Attackコマンドで代用することになるでしょう。


    しかし、攻撃・攻撃後ラベルは、ラベルの記述順番やイベントファイルの読み込み順によって実行される順番が変わります。
     本当は ラベルA、ラベルα、ラベルB の順で実行されて欲しいのに、
     記述や読み込みを間違えると A、B、α や α、A、B、 の順で実行されてしまうことが起こります。
    例えば、 Aで▲4−2を。BでAttackコマンドを実行。αが各話の会話イベント。 だったりすると困ります。


    とはいえシナリオ作者それぞれで対応可能であり、不可能ではないので、
    とりあえず「機能拡張が望ましい」に留めておくべきでしょうか
    でしょうか。



     ▲4−1.グループ内のどの相手に攻撃をしかけるかを選択する方法
    CPUが攻撃を行う場合は、▲2−1の問題に帰結します。

    プレイヤーが操作する場合、常時攻撃イベントラベルを用いることで対応可能でしょう。


     ▲4−2.先頭以外のユニットに攻撃をする場合の、予測命中&ダメージの確認方法
    不可能ではないでしょうが、命中率・ダメージに関係する特殊能力の数が多いので面倒です。

     ▲4−3.先頭以外の攻撃・反撃方法の決定方法
    援護攻撃自体をAttackコマンドで代用することにすれば、
    使用する武器をAskコマンドでプレイヤーに選んでもらえば再現可能かと。

    グループ状態とは関係なく、援護に使う武器を選択できるようにするなど、
    援護行動の全体の機能拡張、をリクエストすることも考えられるかもしれません。
    (この場合は別件扱いとなるでしょう)


     ▲4−4.攻撃順番の設定方法
    色々な攻撃順番のルールが考えられます。
    例えば、
     先頭のユニットによるメインの攻撃よりも先に、先頭以外のユニットの攻撃を行わせたい
     攻撃側反撃側に関わらず、格闘判定の武器での攻撃は、射撃判定の武器での攻撃より後になる
    など。

    けれど、攻撃・攻撃後(破壊)ラベルと、Attackコマンドで代用する方法を取るならば、
    (ラベル実行順さえ間違わなければ)対応可能でしょう。

     ▲4−5.グループ内での援護攻撃の再現
    援護攻撃そのものをAttackコマンドで代用する方針ならば、再現可能か

     ▲4−6.グループ内で援護防御が発生することの再現
    援護防御の代わりにSP効果「みがわり」を使うことで大体再現できるのではないかな、と。

     ▲4−7.グループ全体への攻撃
    グループ全体攻撃であることを示すダミー属性を使用して判別することになるでしょうか。
    消費ENや弾数、使用した場合のペナルティ(気消属性の場合や変形技)を考慮する必要があり、手間が予想されます。

     ▲4−8.マップ攻撃
    これもMapAttackやAttackコマンドで代用することになるでしょう。
    途中で切り払われた時の場合や、▲4−7と同様、消費するもの+ペナルティ類の問題をどうにかしなければなりません。

     ▲4−9.合体攻撃
     合体攻撃のパートナーが同一グループに存在する場合でも、合体攻撃が使用可能。
    という条件にしたい場合があるでしょう。

    データ側での対応が必要であり、パートナーが消費するものの処理も必要になりますが、
    なにより、パートナーがその合体攻撃を使う条件を満たしているかどうかの判定が必要になります。
    …まったく不可能とまでは行かなくとも、再現は難しそうな気がします。

     ▲4−10.命中率・ダメージへの補正
    「先頭以外のユニットの攻撃のダメージは、通常の60%になる」など、
    グループ状態のルールによっては、攻撃の命中・与ダメージに補正が入ることがあります。
    バトルコンフィグデータとダミー能力などで対応可能でしょう。

     ▲4−11.グループ全体に適用される(防御)特殊能力
    小隊システムでの、小隊全体に効果のあるバリア類を想定しています。

    データとして用意しておいたアイテムを付け替えさせる、とかでしょうか。
    その方法の場合、攻撃を受けたユニットとENを消費する機体が別になる、という点が問題になりそうです。

     ▲4−12.戦闘結果、メッセージの表示。戦闘アニメの表示
    Attackコマンドを利用するのであれば、そんなに大きく変更・拡張する必要はなさそうに思います。
    戦闘ルール全般の機能拡張を行うのであれば大きな影響があるでしょうけれど。
引用返信/返信 削除キー/
■5816 / inTopicNo.3)  前ツリーのレス+補足の補足
□投稿者/ 中箱 -(2008/03/04(Tue) 04:59:03) [ID:TdSzoAHN]
    補足部分
    =====
    ●目標について

    ツリーの目標は親記事に書いたとおり
    > 「グループ状態であるユニット群が行動(戦闘など)を行う」ことが、
    > 何らかの方法で可能になるような機能拡張案群をリクエストする
    ですが、

    私自身の個人的な願望としては、
    既存システムを再現するのに必要最低限の機能よりはもう少し広く、
    「俺式小隊システム(攻撃する順番とか色々細かい)」や「ツインじゃなくてトリプルユニット」
    みたいな感じのものも、それなりに実現しやすいような案にしたいな、とは思っています。

    これは、あくまでも「実現できて欲しい」であって、「実現できなければならない」や、「実現することが目的である」ではありません。

    ですから今後の議論において仮に、
     小隊システムの再現への需要が強く、シナリオ独自で調整可能な部分や、ツインユニット・スタック制の需要が明らかに弱い
    ようであれば、
    その後の議論は、小隊システムの再現に最適化した案を目指すことを最優先として進めても良いでしょう。


    ただ、一度、一つの形式を実現する機能が実装され、後々にその機能を再拡張した場合、
    プログラムが効率の悪いものになったり、機能として無駄な部分が発生したりする恐れがあります。
    もしかしたら、既存の機能との兼ね合いの問題などで実装自体が困難な部分が出てくるかもしれません。

    それらを考えると、再拡張はなるべく避け、一度で済ますに越したことはないはずです。
    (もちろん、実装作業の手間という問題があるわけですが…)

    この観点からも、
    最低限の機能のみでの実装よりは、初めからある程度のカスタマイズを許容する機能の実装であって欲しいな、とは。


    =====
    ★1−B−bについて

    不可能ではないが面倒、というのは私が5721で述べたほか、
    なめさんが、No.5808にておおまかな実現方針とともに、面倒である、という見通しを示されています。


    この形式のシステムをそのまま再現するには、移動コマンドと同等のものを再現する必要があります。
    現機能ではHotPointを利用するしかありませんが、
    HotPointを利用する場合、クリック待ちしている最中、アブジェクトの下に表示されるマップ範囲を移動させられない、という欠点があります。

    移動先マスとは別に、マップ範囲を移動させるためのHotPointを作れば対応可能だとは思いますが、
    ドラッグして表示範囲を変えられる移動コマンドと比較して操作性が著しく劣ることは確実です。

    =====




    以下、遅ればせながらレスとなります。


    >なめさん
    初めまして。ご意見ありがとうございます。


    >指定した座標が移動可能範囲かどうか?を調べる関数さえあれば
    >中箱さんの考えるグループ状態の作成など後はユーザー側でインクルを組むなりで大抵は解決できると思います
    (略)
    >X座標(),Y座標()がメインパイロットの乗ってるユニットの移動可能範囲に含まれれば1を、できなければ0を返すという関数です


    これは、No.5721における私案で

    > ・指定したユニットが、指定した座標に(、指定した移動方法で)、次の移動で到着可能であるかどうかを返す関数「Reach(仮)」
    >  (オプションとして、指定座標に味方/敵がいても、その座標のユニットのみ無視するようなものを設定可能にする)

    という形で提案していたものの機能を絞って、具体的にした感じでしょうか。
    (提案が分かりづらかったようですいません)

    作成に関してはそれがあれば大体可能になると思います。


    5721の私案に関してはとりあえず棚上げ・保留にしていますが、
    今後案をつめて行く際には参考にさせていただきます。



    >グループを組ませたいAとBがいるとして
    >Bの座標を記憶させて一時的にエスケープさせ、AがBの座標まで辿り着けるなら
    >Bを戻して、Aをグループに組み込ませればこれでグループは組めると思います

    CPU操作のユニットを合流させる方法としてはそれで良いと思います。
    この点が解決すれば、
    シナリオで利用する場合の残る問題は、Aを、Bと合流させるかそれとも他の場所に移動させるか、の判定方法になりそうですね。
    (そこは、CPUユニットの制御に関することして、別件で検討した方が良さそうですけれど)


    重ねて、ありがとうございました。
    では。



    ●●
    >乾さん
    一月経ってしまいました。レスが遅くてすいません。


    > 検討の段階でシナリオで具体的にどのようなコマンドを組み合わせて使う物なのかの
    >イメージが固まらない状態では、そのコマンドを実際に使用する際の問題点の
    >洗い出しなどが行えないため、明確な目的が見えないまま
    >「なんとなくこれがあったら便利じゃないか」程度の機能が追加されてしまう恐れがあります。

    確かに、最後までイメージが固まらない状態で議論が続けば、使い勝手の悪い機能が追加されてしまう恐れはあるでしょう。

    しかし、「単一の方法を"実装として決め"た上で議論を進めなければならない」という主張は明らかに極論です。
    それを前提とした乾さんの考え方には無理があります。

    「使い勝手の悪い機能が追加されるのを防止する」ことは必要な視点だと思いますが、
    それを達成するために選んだ手段が「極論を持ち出す」ことでは、賛同しろと言う方が厳しいでしょう。


    さて、
    想定する実装を絞った上で議論を進めることは、参加者間のイメージを固めやすくなると同時に、
     想定した実装に沿って使えば使い勝手は悪くないが、それから外れると非常に使い勝手が悪い機能が追加されること、
    言い換えれば、
     柔軟性(や拡張性)に欠ける機能が追加されることに繋がる恐れがある
    ということでもあります。

    例えば、OGsのツインユニットのみを想定して議論を行った場合、追加される機能は、
     ツインユニットの再現は非常に簡単であるが、2&3次αの小隊システムやGジェネシリーズのスタック制の再現は困難な機能
    となってしまう恐れがあります。

    もちろん機能が不足しているならばその機能を追加すれば良いわけですが、
    補足部分でも似たようなことを書きましたが、後から追加する形になると、当然、構成に無駄な部分が生じます。
    データ・シナリオの互換性を保つために、既存の機能の変更には慎重なSRCにおいては尚更です。

    つまり、
     想定するものを絞りすぎれば、柔軟性に欠けたものが追加され、後の再拡張にも悪影響を及ぼしかねない。
     かといって絞りこみを行わなければ、議論自体がまとまらなかったり、使い勝手の悪い機能が追加されてしまう。
    です。

    そういう関係が存在する以上、「まったく想定するものを絞りこまない」や「一つに絞る」という極論は、
    少なくとも議論を始めようという段階で選ぶ方針としてふさわしくありません。



    > そして、このツリーの目的はユニットが既にいるコマに進入するときのコマンドの
    >実現をする事なので、それをシナリオで実装するとどうなるかのイメージを提示し
    >現状の機能で実現可能なので、もっと他の部分を検討するのが優先ではないかと
    >理解して欲しかったと言うことなのです。

    考え方の前提から食い違った意見ですし、ツリーの目的の時点から誤解しています。

    乾さんが繰り返し述べていたのは
     「ユニットが既にいるコマに進入するときのコマンド」が「シナリオで実装するとどうなるかのイメージを提示し」
     それが「現状の機能で実現可能」であること
    だけです。

     「一つの方法が実現可能である」
    ことを
     「もっと他の部分を検討するのが優先ではないか」
    という主張につなげるには
     「シナリオで実現する方法が一つでもあれば、それ以外の方法は不要である」
    という考えが抜けています。

    そしてその、「シナリオで実現する方法が一つでもあれば、それ以外の方法は不要である」という考え方を、私はしていません。
    ゆえに、
    実現可能であることだけを何度繰り返し主張しても、
    「他の部分の検討を優先するべきだ」という主張には説得力が生じません。

    再現可能であることをわかっている相手に「再現可能である」ことを主張し続けていただけでは
    一番言いたいはずの主張に繋がりません。
    再現可能であるかなんかよりも先にまず「一つあればいい」ことを説明する(最低でも、自分がそういう前提で意見を出していることを相手に示す)べきだったでしょう。



    私はNo.5721にて
    >○3
    > 「グループ」の作成&解散はユニットコマンドで実行するものですので現状で再現可能かと。
    と書き、
    その上で
    > "すでに味方ユニット(グループ)が存在するマスに、他の味方が移動先に指定して進入する"
    ことを実現するための機能追加を提案しました。
    「実現方法は一つあればいい」という前提で考えると、この提案が論理的におかしい、もしくは飛んでいることは明らかです。

    中箱の書いた文章の論理がおかしい場合、その原因は
     ・中箱の書いた論理がおかしい(中箱の頭が悪い、もしくは文章が下手)
     ・中箱がわざとおかしい論理を使った(中箱の性格が悪い)
     ・読んだ人間が読み間違えている
    のどれかです。

    であれば、ご自分の読解力を信じるのであれば、論理がおかしいことを指摘する事から始めるべきでしょう。
    そうでなければ、もしも「書いた論理がおかし」かった場合、会話が通じない、という事態に陥りかねません。

    …というか、現に陥ったわけですが。
    乾さんは私の示したものを理解していませんでしたし、私も乾さんのご意見を理解できていませんでした。



    親記事の最後にも書いたことの繰り返しですが、
    以後、このような無駄の多いやり取りを避けるためにも、
    不自然さ、おかしさを感じたのであれば、それを「解釈」した上で意見を続けることは控えてくださいませんでしょうか。
    実際にここまで見事にズレた意見の応酬をしてしまったわけですし。


    汎用データ管理人という議題と密接な関係にある立場で、戦々恐々なり興味津々なりになるのは仕方が無いんだろうなーとは思いますが、
    であればなおのこと、レスをつける際には慎重であるべきだと思います。



    あとこれはちと余談気味な話で、一ヶ月経った今ではもう割とどうでも良くなった疑問なのですが、

    乾さんは5721のどこを読んでレスしていたのかな、と。

    なにせ、
    > 3.「SRWOGs」のツインユニット@PS2

    >○3
    > 「グループ」の作成&解散はユニットコマンドで実行するものですので現状で再現可能かと。
    と書いた直後のレスで

    >現状の機能でも「合流先の座標orユニットID」を取得することは可能です。
    > (隣接後にコマンドを表示するタイプのSLGでは良くある形式ですし、SRW-OGのツインユニットシステムもこの形式です)
    と、私から見れば分かりきったことをわざわざほぼそのまま繰り返して書かれたものですから、
    正直、「一体5721のどこを読んだんだろう?」と心配になりました。

    もちろん、レス元の文を書き、直後の5725の時点で指摘しなかった私にも問題があったのは確実でしょうけれども。



    5724,5726,5730ですが、意見の前提があまりに違いすぎるので、すいませんがレスは控えさせていただきます。
    どうしても外せない意見が含まれていたのであれば、前提の違いを考慮した上で再度お願いします。


    なお、ツリーへの参加不参加はご自由になさってくださって結構です。事前の宣言は一切不要ですので


    では。
引用返信/返信 削除キー/
■5818 / inTopicNo.4)  設計方針の違い
□投稿者/ 乾 -(2008/03/05(Wed) 00:12:33) [ID:KPaseBs2]
     中箱さんの設計の方針、理解させていただきました。

     以前のレスの引用と解釈によるやりとりは議論のための議論を
    呼ぶだけですので、触れずに考えを整理させて頂きます。

     私の今までのレスは、ソフトウェアの新しい機能を
    作るときは、まずユーザから見た基本となる動作を定めた上で
    1回完成形を作り、機能の派生はその後に、あくまで基本を
    ベースにカスタマイズして行う、というのが話の前提として
    ありました。
    (ソフトウェア開発用語で言えば機能要求→仕様化→設計という行程に
    沿って進めて1回完成させるという考え方になります)

     そのため、以前の議論の段階では、インタフェースを一つに
    絞ることが私の中では当然だったということだったわけです。
    (他の方法論で完成を目指すという方向に頭を切り替えることが
    出来なかったわけですね、お恥ずかしい限りです)

     で、中箱さんの設計方針は、出来る限りの範囲で考えうる
    動作のパターン全てが再現可能なパーツを最初に用意しておき、
    どのような機能が完成するかは、後でパーツを使うシナリオ作者に
    一任するというスタイルということですよね。

     これはあくまで経験則なのですが、中箱さんの方式ですと実際に
    動くものが完成するまでの状態に持っていくのにかかる作業コストが
    大きいため、この一連の提案が途中で空中分解するのではないかという
    危惧から一つの動作パターンを先に作りこむことを要望していたわけです。
     この辺りの説明がうまく出来ずにきつい書き方になってしまって
    申し訳ありませんでした。

     まぁ、そういうわけなので、この機能をまとめるための方針が
    私とは違っていて、中箱さん自身が現行の方針を維持していくと
    表明している事ですので、この件についてはこれ以上の議論は
    継続しないということにさせていただきます。
引用返信/返信 削除キー/
■5824 / inTopicNo.5)  Re[2]: 前ツリーのレス+補足の補足
□投稿者/ なめ -(2008/03/08(Sat) 03:23:47) [ID:nKjawdca]
    どこから言えばいいのか悩みますが……
    小隊やグループ戦闘といっても、スパロボやGジェネのように仕様の異なるものがたくさんあります
    なので、これをこうしてみたらどうでしょうか?などは目指す目標が同じでないとあまり意味がないのではないでしょうか?
    各々が求める機能なんかもかなり違うと思いますし

    ですから、取りあえずは小隊やグループ戦闘を作る際に必要になる確率が非常に高い関数Reachだけに絞ってはどうでしょうか?
    これは使い道が非常に多いですし、他の事にも使えそうですしね
引用返信/返信 削除キー/
■5832 / inTopicNo.6)  Re[2]: 前ツリーのレス+補足の補足
□投稿者/ 中箱 -(2008/03/12(Wed) 21:17:24) [ID:TdSzoAHN]
    ●●
    乾さんへのレスのような形になりますが、
    おそらく「私の方針」についての誤解があるままでしょうから
    そのあたりを乾さんに限らず不特定多数の方向けに改めて。



    私も「基本を決めてそこから派生」という乾さんの方針の方が、議論自体はまとめやすいだろうとは思います。


    けれど私が、議論がまとめづらくなることを承知で「基本を決めず」に議論を始めようとしてるのは、
     「この案の基本を決めるのは議長じゃない」
    と思ってるからです。
    決めるのなら、グループ状態を求めるユーザーたちによる議論の中で決めるべきだろう、と。


    乾さんが解釈された「中箱の設計方針」は
    >出来る限りの範囲で考えうる動作のパターン全てが再現可能なパーツを最初に用意しておき、
    >どのような機能が完成するかは、後でパーツを使うシナリオ作者に一任するというスタイル
    です。
    これは確かに「中箱の願望」です。そしてあくまでも「中箱の願望」です。

    中箱が議長役を務めるからといって、
    「中箱の願望」をわざわざ「絶対の設計方針」というものに位置付けた上で、案を練りあわなくちゃいけないわけじゃありません。

    少なくとも私は、「私の願望に基づいて進めれば最善なリクエスト案を導ける」なんて自信は持っていませんから、
    願望は願望であって、議論の頭から決定事項にしてしまうつもりはありません。



    議論を開始する段階では、
    「設計方針」も「基本」も、議長があらかじめ決定してしまっておく必要はないと思っています。
    議論をまとめやすくなるというメリットよりも、出てくる意見や結論が偏ってしまうデメリットの方が私は気になりますので。
    (意見を出してくださる方も多分そんなに多くないでしょうし)


    もちろん、「議論の最後まで決めるべきではない」と言っているわけではありません。
    設計方針や基本を決めるかどうかも、議論のなかで決めて行くべきだ、と考えているだけです。






    ●●
    >なめさん
    >小隊やグループ戦闘といっても、スパロボやGジェネのように仕様の異なるものがたくさんあります
    >なので、これをこうしてみたらどうでしょうか?などは目指す目標が同じでないとあまり意味がないのではないでしょうか?
    >各々が求める機能なんかもかなり違うと思いますし


    意味は十分あると思います。
    今はまだ、どんな機能がグループ状態に求められているのかすら明確ではありませんから。
    スパロボ的なものが求められているのか、Gジェネ的なものが求められているのか、
    両方ともか、まったく別のものか、すら分かっていません。



    それと、目標を設定するにしても、あまり早い段階で決めてしまうと、
    結果的には拡張性の悪い案のリクエストに繋がりそうで怖いです。


    例えば初めからスパロボ的なグループシステムを再現することを目標にしてしまえば、
    出来上がる案は、スパロボ的なシステムの再現は容易でもGジェネ的なものの再現は難しい案、になりやすいでしょう。
    つまり、Gジェネはある意味切り捨てた案になるんじゃないか、と。

    …果たして、そんな案でよいのでしょうか?
    少なくとも私は、SRCユーザーとして、
    そういう風に初めからスパロボ的を目指して出来上がったスパロボ的システムのための機能は嫌です。
    Gジェネ的を目指してまとまったGジェネ的システムのための機能であっても、到底手放しでは歓迎できません。


    それよりは、始めは目標を決めず、
    ユーザーそれぞれが求める機能やいらない機能を挙げていく中から「SRCユーザーが求めるグループ状態」を見出し、
    それを目指す目標にする方が、
    結果的にはSRCユーザーにとって望ましいグループシステム案となるんじゃないでしょうか。
    (あくまでも、目標を決めた上で進める場合、ですが)




    >取りあえずは小隊やグループ戦闘を作る際に必要になる確率が非常に高い関数Reachだけに絞ってはどうでしょうか?
    >これは使い道が非常に多いですし、他の事にも使えそうですしね

    グループ状態とは無関係に、単独での利用価値と需要が考えられる新機能であれば
    単独でリクエストに向けての議論はして良いと思っています。(No5811にも書きましたが)


    んー、異論が出無ければ、週末〜週明けあたりに
    >・指定したユニットが、指定した座標に(、指定した移動方法で)、次の移動で到着可能であるかどうかを返す関数
    についての別ツリーを立ててて検討を始めてしまいたいところですが、
    …もう週半ばですし、ちょっと急ぎすぎでしょうか。


    急ぎすぎであればツリー立ては来週半ば辺りに。

    また、二つのツリーを同時進行させるのはまずい、という指摘があれば、
    こちらのツリーを一時中断して進めようかと思います。



    今回は以上です。
    では
引用返信/返信 削除キー/



トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

Pass/

HOME HELP 新規作成 新着記事 トピック表示 検索 掲示板新着情報RSS配信新着情報 過去ログ

- Child Tree -
- Antispam Version -