提案:全キャストカードにデフォで識別用隠蔽称号を与えられるオプション

Issue #258 resolved
ルンバ created an issue

たとえばキャストカード名が「ゴブリン」なら「;カード名ゴブリン」を与えるオプションです。(「カード名」の文字列は単に既存の称号との競合避けです。;でなくとも隠蔽なら何でも可)

敵選択用に識別用のアイテム、召喚獣、称号を用意するのは常套手段なので、単にそれを簡便にし労力を省くだけなのですが、常套手段の手間をへらすので実用的です。 単独カードなら単独の指定にそのまま使えますが、同名カードが複数いる場合も同種だけを狙って効果を出すギミックを作る場合、手間が楽になります。 xエディターのオプションで『全てのキャストに「;カード名〇〇」称号を与える』的なオプションを設け、デフォはOFFなら不要な人への不満もないと思います。

また、そのようにエディター側で決まった書式で称号を用意するのが前提となれば、使用イベントでゴブリンだけを狙うゴブリンスレイヤー等の応用的なカードも派生しそうです。(そういうカードの使用をシナリオ作者側が嫌ならオプションをOFFにしておけばいい〕こちらの面は単なる労力の問題でなくゲーム性の拡充に資する可能性があると思います。

Comments (5)

  1. ルンバ reporter

    なおオプションはOFFでも手打ちで個別に「;カード名〇〇」称号を与えられれば、ゴブリンに対しては「;カード名ゴブリン」を与えておいてゴブリンスレイヤー的カードの使用は許容するが、識別称号無しのオークにはオークスレイヤー的カードを許容しない等の切り分けもシナリオ作者側で可能です。

  2. k4nagatsuki repo owner

    ご提案ありがとうございます。

    私としては、この案には問題が多いと思います。

    まず前提として、識別用のクーポンは名前だけのような単純なものであるべきではありません。シナリオ内で一意に特定できなければなりませんし、使用時イベントを考えればシナリオ外との競合も避けなければなりません。そうなると、クーポン名にIDやシナリオ名・作者名を含めるといった事が必要です。

    キャストカードを一意に特定する仕組と、ゴブリン識別のように共有する仕組は、目的が矛盾しており、一つの手段で両立できるものではない点に注意してください。

    さて、識別クーポンが自動的に付与・変更されなければこのアイデアのメリットがありませんから、キャストの情報が変わるごとに識別クーポンも自動的に変化しなければなりませんが、そうなるといくつかのややこしい問題が生じます。

    1. 編集する時、自動クーポンが付与されたキャストと付与されないキャストをどう見分けるか。クラシックなシナリオに新しいデータを加える事は簡単ではありません。シナリオ全体に対して処理しようとすると、今度はインポートでややこしい問題が発生します。
      • WSN形式ならばこの問題はありません(XMLのXはデータ拡張が容易な事に由来します)が、WSN形式の拡張を考えるなら、そもそも副作用の恐れのあるクーポンを使うより、ID名のようなものが定義できるようにした方がよいです。
    2. クーポンが自動的に変化した結果生じうる競合をどう回避するか。自動的につけられる、という一点を除けば一般的なクーポンと同じように扱うものである以上、手動でつけられたクーポンと競合した時の問題は回避できません。その回避方法は複雑になります。一貫したルールを作る事ができても、そのルールは直感的なものにはならないはずです。結果、ユーザが意味不明な問題に悩まされる場面が出てきます。

    この案は、生じる問題の複雑さに対してメリットが大きくないように思います。

    経歴の編集欄に名前+ランダムな文字列のようなクーポンを追加するボタンを用意するような方向ならば多少はましかもしれません。

  3. ルンバ reporter

    ご指摘ありがとうございます。

    一応元アイデアを確認させていただくと、カード名から作成したクーポンを自動的に配布することで ①個体識別 ②カード名から同種を識別 の2つの目的で利用できると思いました。

    しかしながら、ご指摘を受け、②の用途は捨てて①の個体認識の目的だけで絞って考え直してみました。

    同じカード名で別IDのカードがある場合を想定するとクーポン名はカード名に加えてIDから作成し(例「;ゴブリン.ID1」)カード名やIDに変更があった場合はクーポン名も自動的に書き換えられる方がよりきめ細かい識別が可能で良いです。 またIDも指定での隠蔽称号であれば、わざわざその称号分岐を利用した使用時イベントカードを持ち込んで作者の想定外の効果を起こそうという事案は想定されにくいと思いますのでクーポン名にシナリオ名・作者名、あるいはランダムな文字列を含める必要は無い気がします。(含めても問題は無いですが)

    このオプションがONだと、このクーポンが全てのキャストカードに自動配布される仕様であれば「自動クーポンが付与されたキャストと付与されないキャストをどう見分けるか」という問題は発生しません。(ONのシナリオにインポートしたらインポートされた時点でそのカードに与えられたIDから自動的に称号が付与される)

    一旦ONにしてからOFFにした場合には、自動配布されていたクーポンは「全て消去される」か「全てそのまま残る」か「OFFにした時にどちらか選択」の三択がありえると思いますが、例外的な扱いのキャストを設けたい場合も踏まえて、仕様は「全てそのまま残る」か「OFFにした時にどちらか選択」がいいと思います。(その場合はクーポンの有無は経歴の編集欄で見分ける事になります)

    この自動配布されるクーポンはコンボ ボックスやクーポンビューでの並び順は一番下に来る方が良いかもしれません。

    本当は、同じIDのキャストカードを複数並べても個別に識別可能なオプションだと理想なのですが、それはWSMでは不可能でしょうから、この提案はあくまでWSMでの利便性向上の意味でのオプションになります。またもし同一IDからでも個別に識別可能なWSNのなんらかのオプションができても、同一IDだと同じ称号になるこのWSMのオプションは別の用途として使い分けできます。それは抜きにしても別種のエンジンの共用を前提にWSMでシナリオ作成する人が多い現状では利益があると思います。

    とはいえ劇的な利便性の向上になる類ではないので、実装の労力と見合わせご検討していただければ幸いです。

  4. k4nagatsuki repo owner

    仰る機能の実装のためには著しい困難と混乱を乗り越える必要があります。ですので私は賛成できません。

    どうしても解決しなければならない問題のために困難に立ち向かったり細かい問題に目を瞑る必要があるならともかく、今回は相対的なメリットが少なすぎます。

    • 自動クーポンを付与するタイミングを決める必要があります。全体を一括で処理するのであればシナリオの保存時が妥当ですが、そうなると保存前には自動クーポンは宙に浮いた状態になり、イベント製作時に一覧に出てこないなどの支障が生じるため、それを防ぐために特別な措置が必要になります。
    • 自動クーポンは他のクーポンと違って編集できる性質のものではないので、一覧や検索で特別な扱いをする必要があります。
    • 上述した通り、衝突・競合の問題は単純な形では解決できません。ここには「一人の経歴内に異なる得点の同一のクーポンが出現した時にどうするか・それを元に戻した時やさらに変更した時にどうなるか」といった恐ろしくややこしい問題も含まれます。これは(システム以外の)クーポンという本来手動で付与・剥奪するものを流用しようとしたせいで生じる本質的な問題です(実は性別や年代といった事柄にも同様の問題がありますが、これはCW時代からあるので仕方ありません。「目を瞑る」例です)。途中でオプションが解除されてまたオンにされた時など、自動クーポンと手動でつけたクーポンの区別をつける事は不可能ですので、これも競合のルールを決めて対応しなくてはなりませんが、おそらく直感的な結果にはなりません。
    • 自動クーポンが変更される時はそれを使用するイベントも併せて変更されなければなりませんが、ここにも上記したのと同様の問題が含まれます。イベントツリーには複数のクーポン分岐が連なっていたり、別ツリーと連動して動いていたりするので、解決はさらに難しくなります。というより、完璧な解決は不可能と思われます。
  5. ルンバ reporter

    私としては、キャストビューの一覧に新たなカードが加えられた時に、カード名ID等から自動で経歴欄にクーポンが付与され、カード名ID等を変更した時は自動で書き換わるようになれば、あとは既存のクーポンのシステムに則って機能するかと思ったのですが、どうも浅はかだったようです。

    この提案はさげさせていただきます。 お時間お割きいただきありがとうございました。

  6. Log in to comment