| ども、あかんべえです。
おもに、リクエストの目的と目的に見合った機能という点から意見を述べます。 ただ、中箱さんの意図を不正確に理解しているかもしれません。すみませんが、誤解があればご指摘をお願いします。
まず、意見の結論部分から。
1.シンプルなリクエストの場合 リクエストの目的の「主眼」(「SetStatusコマンド以外でダミーの特殊状態にすること」)についてだけ言えば、案2の武器属性だけで十分ではないでしょうか。このように絞り込んだ場合、それはそれで、すっきりまとまったリクエストになると思います。
2.柔軟な特殊状態機能の実現をもめざす場合 (1) 案1・2のユニット用特殊能力で実現できることは、結局のところ“ユニット用特殊能力を複数記述することによって、複数の特殊状態が組み合わさった新たな特殊効果をデザインすることができる”ことにつきると思います。 (2) しかし、自由な特殊効果デザインのためにはユニット用特殊能力だけでは十分でなく、かなりの数の新規特殊状態が必要かと(実は腹案もあります)。 (3) 柔軟な特殊状態機能を目的に組み入れる方向でリクエストするなら、案2を基本にし、ただし、武器属性「状」の2字目のダミー特殊状態もまた、ユニットのデータに記録されなければならないと思います。 つまりたとえば、武器属性「状あL1」、特殊能力が「特殊状態付加=あ 毒」の場合、Condition(ユニットID, 毒)も Condition(ユニットID, あ) も「1」を返すということです。(毒は「0」を返すという仕様でもよいのですが、内部処理がかなりややこしくなりそうです) これは、イベントなどの中で、本来の毒状態と区別できるようにするためです。
3.別案は、まったく別の機能を持ったリクエストで、別のツリーでやるべきではないでしょうか。
以下は、理由です。
★ 「1.」と「2.(1)」について > 案1か2が追加された場合、 > (ダミーの)特殊状態・Condition関数・常時ラベルやバトルコンフィグデータとを組み合わせることで > 様々な特殊効果属性っぽいものを作ることが可能になります。
常時ラベルやバトルコンフィグを必要とするのであれば、現状と変わりないように見えます。 たとえば、毒状態似の機能を記述するためには、ターンイベントの時点でダミー特殊状態データがありさえすればよく、そのダミー特殊状態が *攻撃後イベントなどで SetStatus されたものか、それとも新設された「状」属性攻撃により付加されたものかによって記述が変わることはありません。バトルコンフィグを使う場合も、同様です。 ユニット用特殊能力も、この用途にはまったく寄与しないように見えます。 つまり、この用途は本リクエストとは無関係ではないか、ということです。
となると、特殊能力「特殊状態付加[技]」の役割りは何でしょう?――ダミー特殊状態に複数の特殊状態を割り当て可能になること以外は、見出せないのです。
★ 「2.(2)」について 既存の特殊状態は、いわば「完成品」としてデザインされていて、それ自体複合的なものも多く、組み合わせて使う「素材」としてはかなり不便です。 たとえば、ユニットをコントロール不能にする特殊状態には「暴走」「混乱」「踊り」「狂戦士」などありますが、いずれも他の機能をあわせ持ち、単純にコントロール不能にするだけの特殊状態はありません。「移動不能」は、移動をできなくし、攻撃されたときの命中率を変え、回避オプションをできなくしますが、これら3つの機能の一つだけを実現する特殊状態はない、などなど。 また、パラメータを変える特殊状態は多数ありますが、いずれも固定値か固定比率です。
★ 「2.」の補足 この項は、原案の「これらに限らず、新規の武器属性を本体機能として追加することなくかなり色々なこと可能になる」との記述に対応し、私なりに目的を整理したものです。ですが、中箱さんの意図にどれだけ合致しているかは、ちょっと自信がありません。 中箱さん、すみませんが、(1)リクエストの目的における、「主眼」と「色々なことを可能にすること」それぞれの比重はどれぐらいか (2)「色々なこと」が“ついで”ではなくしっかり目的の一つであるなら、その詳細 を改めてアナウンスしていただけないでしょうか。
★ 「3.」について 別案の機能は、特殊状態関連だけではなく、ずっと汎用的です。 また別案は、特殊状態付加に特に適合的な機能でもなさそうです。案2ではできるが別案では実現が困難な機能もあります。「サブルーチンを呼ぶ条件」の仕様に「特殊効果発生」を加えれば特殊効果に一応対応できるけど、弱点・耐性などによる発生率変動には対応が難しい(対応しようとするなら、「命中」を条件にサブルーチンコールした上で改めて特殊効果発生率を計算させる必要があります)。また、案1・2にある“(狭義の)クリティカルを発動させない”機能も、別案だけでは難しそうです。
|