WSN追加案;クーポン所持判定の多岐分岐

Issue #444 resolved
Num_400 created an issue

昨今、クーポン判定でPCのフレーバーな設定を拾う事が流行っていますが、
クーポン分岐を重ねに重ねているため、結構見づらく、保守や改造が面倒くさいと感じています。
そこでクーポン判定にもステップ多岐分岐のように、1つのコンテントから多数のクーポンで分岐できれば、少しは楽ができないか?と考えました。

特にPyは種族設定も可能なので、相性も良いと思っています。

Comments (9)

  1. Num_400 reporter

    こちらはnagatsuki さんが作成された機能イメージです。
    私もこんな感じで良いと思っています。

    念のためUIには、クーポンの選択優先度は上が先であることを明記しておくと良いかもしれません。

    # 選択中のメンバがクーポン`_子供`を持っていれば最初の分岐先に、`_若者`は次の分岐先に……と分岐する
    分岐元
      ├_子供
      │   :
      ├_若者
      │   :
      ├_大人
      │   :
      ├_老人
      │   :
      └該当なし
          :
    
  2. k4nagatsuki repo owner

    ご提案ありがとうございます。一覧の方にIssue番号を入れておきました。

    これまでWSN形式で独自のイベントコンテントを追加する事はありませんでしたが、ぼちぼち視野に入れてもよさそうですね。

    このアイデアは、まったく新しい事ができるというわけではないのですが、私はシナリオの見通しのよさ・保守性をもたらす機能には意義があると考えています。目的に対する内容がこの形の他に考えにくいので、仕様の衝突も起こりにくそうに思えます。

    他の方の考えはいかがでしょうか。

  3. Num_400 reporter

    ただ、この機能にはもう一手欲しいと思ってます。

    それは各クーポンの判定にOR判定とAND判定が可能になることです。
    一つの分岐の判定に複数のクーポンが組めることが私の理想です。

    例えば種族判定がありますが、「吸血鬼」を判定するのに現状"吸血鬼"クーポンでは足りないと思います。
    手持ちの某シナで確認したところ「吸血鬼」の判定には・・・
    "ヴァンパイア"
    "バンパイア"
    "_ヴァンパイア"
    "_バンパイア"
    "吸血鬼"
    "_吸血鬼"
    "種族:ヴァンパイア"
    "_【吸血種】"
    "吸血種"
    "_吸血種"

    なんと9個! キーコードと同じ問題が!
    こうなってくると多岐判定でも分岐一つにクーポン1個づつというのは現状の課題を解決できてないんじゃないか?と考えています。
    じゃあどうしようか?となるとOR判定とかAND判定になるのですが、技術的な課題はあるのかとかUIどうすんのとか課題もわらわら。

    私の意見はひとまずここまでです。皆様のご意見ご感想お待ちしております。

  4. k4nagatsuki repo owner

    たぶんその問題は多岐分岐で解決するのは難しいと思います。

    現行の称号分岐を拡張して、複数の称号を指定できるようにし、その上でAND・ORを選択できるようにした方が解決に近づけるはずです。

  5. Num_400 reporter

    一日冷静に考えたら、確かに多岐分岐で解決する課題じゃなかったですね。
    多分上のような種族クーポンを纏めたパッケージで一度種族を確定させて、
    自シナリオ内だけで完結する種族クーポン(例えば:吸血鬼_400シナ用)とか付与すれば解決出来る気がしてきました。

    すみませんが上から4つ目のコメントは無視で結構です。コメント二つ目の機能イメージのままで良いと思います。

  6. k4nagatsuki repo owner

    pull request #1744

    多岐分岐の内容について他の意見も出ていませんので、当初のイメージのまま試験実装を行いました。

    その他に相当する「全て所有していない」の挙動はエリア分岐などと同じです。つまり、たとえ「全て所有していない」が一番上にあっても、他の全ての分岐先にマッチしない場合のみそれが選択されます。

    対応するエディタはcwxeditorの20170128c版以降です。

  7. k4nagatsuki repo owner

    pull request #1746

    すみません、選択中のメンバではどうも不足のようなので、クーポン分岐と同様の範囲を指定できるようにしました。挙動も同じで、ヒットしたメンバが選択状態になります。

    これは議論をすっ飛ばしての実装なので、あとで撤回するかもしれません。

  8. Num_400 reporter

    反応遅くてすみません。実装ありがとうございます。
    これからちょこちょこテストしてみようと思います。

  9. Log in to comment