Messages

「#294: WSN追加案: メンバ選択分岐に評価メンバ式を追加」に関する私見 (direct message)

  1. 権兵衛 七篠
    wrote

    権兵衛 七篠 さんがあなたに Bitbucket でダイレクトメッセージを送信しました:

    ※Bitbucketで文面送ると空行が削除されるようで送信を何度かやり直しました、スミマセンorz

    ご無沙汰しています、七篠権兵衛です。

    文章の尺やその内容の都合上、本来のレスではなく、

    こうして内密にメッセージをお送りする形になることをご容赦願います。

     

    表題にあります追加案に関して、個人的にご質問とご意見を申し上げたく、一筆啓上するしだいです。

    なお、文面がいささかぶしつけであり、感情的になっている面があることを

    あらかじめお詫びとともに申し上げておきます。

     

    なお本文は全力の七篠節で

    ものすごーく長いのでメッセージの要約を付しておきます。

    要約:

    なぜ提案したし。

    ご提案の拡張案について、拙作STARと酷似しており、正直かなり複雑な思いに駆られる今日この頃。

     

    STARでは駄目なのか?

    手前味噌ではあるが、(速度とユーザーインターフェースの問題こそあれ、)

    拙作の機能は十分であると自負する。

     

    これまでのユーザーが工夫や応用を通じて形にしてきたことを

    無造作にエンジンへ取り込んでゆくことは、道義上の問題にとどまらず、

    CWの発展を支えてきたユーザーの自主性ならびに

    今後のCWの将来性も阻害すると私は懸念する。

     

    今後の開発の方向性

    僭越承知で申し上げるならば、二つの方針があると愚考する。

    (1)思い切ってSTARシステムの機能をまるごとエンジンに搭載する。

    (2)地味だが小回りの利く拡張を重視し、飛び道具はユーザーに任せる。

     

    (1)であっても、「STARシステムの発想や手法をエンジンに搭載する」目的なら

    自分は協力したいし、折角だからパッケージの制約を越えた機能にしたいと思っている。

     

    (2)が自分の本命。エンジン開発に参画する機会にの有無にかかわらず

    STARのようなイノベーションを各自の手で形にする手がかりが提供されることこそが重要と考える。

     

    本件拡張をなぜ実装しようと思ったのか。

    そもそも拙作についてご存知だったか。

    今後の方針はどのように考えているのか。

    事情や背景を理解したよりよい提言、提案へ発展させたいと思うので

    以上について、お答えいただけると幸甚である。

     

     

    以下本文:

     

    さて、「メンバ選択分岐」コンテントにおけるご提案の拡張(以下「本件拡張」と略記)について、

    NEXTにおける評価メンバのデッドコピー元となった拙作、STARシステム(以下「STAR」と略記)と

    個人的には、とても酷似するように感じるのですが

    この本件拡張を提案なさられた経緯はどのようなものなのか

    お伺いしてもよろしいでしょうか?

     

    ※STARは、プレイヤキャラクタ(以下「PC」と略記)の特徴を点数として換算し、

     その合計点数が高いものを選択するロジックをパッケージイベントとして実装しており、

     状態変数を使わずクーポンのみを用いた二進演算処理により、リソースとしての応用の便宜を図ったものです。

     (現状では殆ど隠し機能扱いですが、「人選の確実さ」を判定するオプションも装備されています。

     お求めはギルド、またはhttp://u3.getuploader.com/ghonbe/download/100/STAR%28std.%29.zipにて)

     

    率直に申し上げれば、本件拡張の話にはいささか心中穏やかならざるものがあります、

    あたかもNEXTの開発者のように自作を「白須さん」するような行為ではないか

    もっとあけすけに云えば、「k4nagatsuki さんまで拙作を剽窃盗用するのか?」という疑念すら抱くのです。

    また、個人的な心情の問題を抜きにしても、本件拡張の実装には慎重になるべきかと

    愚考するところなのです。

     

     

    ・パッケージイベントで十分なのでは?

     本件拡張に、私めが待ったをかける理由は、機能面からも説明可能です。

     手前味噌かつ僭越承知で申し上げますと、処理速度と使いやすさ(と知名度)を除けば、

     おそらく本件拡張の機能について、パッケージイベントを本質とする拙作STARで

     その大半以上をカバーできるかと、私は愚考するのです。

     本件拡張がデッドコピー元の評価メンバ(NEXT1.50エンジン)に範を取るのだとするならば、

     評価の対象はまずクーポンからになるかと存じますが、

     拙作は仕様上コンテントツリーの形で実装できるあらゆる判定を得点に換算でき、

     それら判定はANDするなりORするなりNOTかけるなり、

     コンテントツリーの許す限りに組み合わせ出来る様になっています。

     またクーポンの条件だけでも、「「本人以外」の所持するクーポン」を評価条件にした事例がございます。

     (他のメンバが役割クーポン等を所持しているかどうかのチェックなどに利用可能)

     何より、パッケージイベントという実装は、エンジンのレベルで実装された機能が持つ、

     今後の「仕様衝突」という懸念と本質的に無縁であります。

     

    ・もちろんパッケージは万能ではないにせよ

     開発者として、私はSTARのほうが本件拡張に優るはずだと、自負していますが、

     純粋にその機能を比較した場合、処理速度と使いやすさの二点では

     パッケージイベントよりエンジン組み込みの類似機能が優る可能性も承知しています。

     コールをできる限り廃してリンク中心にするなど工夫はしていますが。

     パッケージイベントであるため速度において劣る面があるのは事実です。

     (Pyの処理速度が、1.20に比すれば長足の進歩であることはいうまでもありませんが)

     またパッケージイベントであるため、評価パターンをカスタムする場合

     エディタでのコンテントツリー構築に習熟する必要があります。

     移植の容易に配慮し状態変数を廃したことから、二進クーポンの扱いが必要になる面もあります。

     さまざまな制御クーポンを持ち、また多量の解説文章を付して、

     シナリオへの導入はパッケージのコピペで完結させる設計とするなど

     扱いやすさには可能な限り留意するところですが、

     エディタに専用のユーザーインタフェースを持たないぶん、

     STARは本質的に扱いの難しさを抱えているという側面は否定しがたいところです。

     

    ・既存機能をエンジンで真似る問題

     NEXTのまねをするべきではないという理由、すなわち、

     ユーザーの応用と工夫で実現した機能と類似した機能を、

     専用エディタ抱き合わせでエンジン搭載することに私が懸念を持つのは、

     それがCWのこれまでの進歩を支えてきたユーザーから

     自主性や将来性を奪いかねないと懸念しているからでもあります。

     

     専用エディタ抱き合わせで、扱いやすくわかりやすい形で丸めこまれた「新機能」が

     エンジンに追加されれば、なるほど利便性は向上しますし、

     ユーザーはあたかもCWの自由度が増し可能性が拡張されたように錯覚するかもしれません。

     しかしそれは応用と工夫で獲得した自由や可能性ではなく、ただ単に与えられた自由であり可能性です。

     なにより今後その自由や可能性を誰が担保するのかといえば、

     それはエンジンのユーザーではなく開発者だけなのです。

     

     そうした「すでにある機能の再導入」はあしざまに言えば「私物化」というものであり、

     たとえCWpyがオープンソースであるといえど、現状においてすべての機能は「作ったもの勝ち」ですから、

     はじめに実装したものの独裁状態であることは変わりありません。

     策定に参加しなかった今後のCWユーザーたちからすれば、

     初めに作った人間が策定した仕様を問答無用で強いられることになるわけです。

     ユーザーも扱いやすさを得てそれで満足するならば、

     ユーザー自身の応用や工夫はこの扱いやすい「新機能」の枠内に

     囲い込まれてしまうようにも思うのです。一見、自由や可能性を手に入れたように見えて、

     実際はCWのこれまでの発展を支えてきた自主性や将来性を開発者に手放しているわけです。

     

     「既存機能をエンジンで真似る」ということはそうした事例を増やす側面があるという意味でも

     やはり慎重な検討が必要であるように、私は思うのです。 

     (本来こうした機能策定にはCardWirthの仕様やゲームデザイン自体を検討する場が必要だと愚考しますが、

     かんじんの愛護はそれをする気力に乏しいという大問題があります。)

     

     (すくなくともNEXTの類似機能について独断と偏見を述べるならば、

     応用と工夫で獲得した他人(七篠)の成果を、開発者が何の断りもなく

     言葉巧みに横取りしているだけだと断言できます。

     成果を奪われた側としては、CWコミュニティへの信用を失い、二度と横取りされぬよう尽くすこととなり、

     自主性や将来性はおろかその先の自由や可能性をも望めなくなるのです。)

     

    ・あと変な話というか、面倒くさい話(?)として

     まったくの蛇足なのですが、NEXTの機能のデッドコピーを新たに行う行為は

     「#162: Nextシナリオ対応について」にて沸いてきた所謂「NEXT信者」あたりを

     刺激しかねないという意味でも慎重に検討する必要があるようにも思います。

     

     

    ・今後の開発の方向性について。

     個人的には疑問や懸念のある本件拡張ですが、

     この開発、あるいはPyの方向性として、今後二つの方向性が考えられると愚考します。

     (1)STAR同等かそれ以上の機能を詰め込んだ「本件拡張」の開発

     (2)「本件拡張」でなく、パッケージの機能じたいを強化し使いやすさと速度を補う開発

     

    ・今後の開発の方向性(1)どうせやるなら、徹底的に。

     どうしても本件拡張を開発したいのであれば(1)になるでしょうか。

     開発を通じて、「STARシステムの発想や手法をエンジンに搭載する」

     ことができるのであれば、私にとって本件拡張の開発はやぶさかではありません。

     むしろ積極的に参画すべきだとも思っています

     パッケージの制約で出来なかったことをぜひ実現してみたいと思うところです。

     エンジン組み込みで速度を向上させ、エディタに専用インタフェースを設けて

     様々な判定の自在な組み合わせを可能とし、その結果も柔軟に出力できるようにする

     (足きり点を0ではなく可変にする、あるいは多段分岐や変数対応するなど)

     といったさまざまな拡張を提案したいとも思っています。

     

     ただ、個人的には、(2)の方針、すなわち

     ユーザー自身の応用や工夫に任せてみるのはどうか、とも思案するところです。

     これはあくまでいちCWユーザーの私見ですが、

     私たちはNEXTの複製ではない、「Lynaのやり口を追従しない」エンジンをこそ

     世に問うべきではないかと思うのです。

     

    ・今後の開発の方向性(2)Of the user,by the user,for the user!

     私は、CWにおける自由度や可能性は、エンジンを作ることのできる

     誰かの裁量で与えられたり、与えられなかったりするものではなく、

     むしろユーザー自身の応用と工夫こそがもたらすものだと、信じています。

     自主的に、工夫や応用を尽くしてきた、先人の成果や精神を、

     エンジンの機能という形で横取りしておいて「新機能」などと喧伝するのではなく、

     彼ら彼女らの努力や取り組みをできうる限りに将来へと生かすべきなのです。

     本当に必要なものはなんであるか、エンジンがユーザーに提供すべきはなんであるか、

     それは自主性や将来性だと、私は確信します。

     すなわち、

     ユーザーの、自主性や将来性を担保した、

     ユーザーによる、応用と工夫を引き出すエンジンこそが

     ユーザーのための、そしてカードワースの未来のためのエンジンになると思うのです。

     

     華々しい新機能より、地味でいいから小回りの利く拡張を重視して

     飛び道具はユーザーに任せたほうがいいのではと、私は考えるのです。

     (1)の方針、「STARシステムの発想や手法をエンジンに搭載する」であっても

     私は出来うる限りに協力したいと考えるのですが、

     その一方で、こうした参画、協業の恩恵を、できることなら自作以外、つまりSTAR以外にも

     広げたいと思うのです。私と同じくCWで工夫や応用を重ねてきた人々、

     あるいは自分のようには参画の機会に恵まれないかもしれない、

     はるか先のCWユーザーの方々にも、STARのようなイノベーションを形にする手がかりを

     広く提供したいと、私は願うのです。

     

    ・拡張の具体例

     地味だが小回りの利く拡張、というものは、たとえばそれは、

     

      状態変数をパッケージ自身に保持させたり

      (パッケージをライブラリとして運用できるような想定だが、

       将来的には変数といわず札や素材データなどもパッケージ格納ないし

       エディタレベルで紐付け(移動やコピーの際に連動して複製)できるようにするか?

       アクセスする際は「\\[パッケージ名]\パッケージ内部変数」みたく、

       円マーク二重&角括弧のような特殊表記でパッケージ名指定とか。)、

     

      あるいは、体力その他CWのパラメタを状態変数としてアクセス可能にするとか

      (ex1:$\\(選択メンバ)\体力$

         (円マーク二重でシステム状態変数とか。別途上限を自由設定する変数が必要か?

          各変数の最大値に対する比率換算で代入/分岐する拡張もあると便利か。)

       ex2:%\\(メンバ_6)\名前%

         (存在すればtrueで名前表示、不在ならfalseで表示なし?

          存在しないメンバの場合常に0または最大値をを返答するか?))、

     

      はたまたエディタ側の大掛かりな対応になりますが、マクロ機能を搭載して

      簡易な設定で複雑なロジックを出力可能にするなど

      (ロジックごとにプラグイン形式にすればロジックの更新はプラグイン差し替えで可能。

       エディタにプラグインの開発環境が付録すれば多分無敵か?)、

     

     いくつか自分なりに考えてみた例ですが、

     用途や応用はユーザー自身の工夫次第というふうに

     「何ができるかはユーザー任せ」にできる拡張を実装する方がほうが

     個人的には望ましい、あるいは使う立場として楽しいと愚考する次第です。

     

    ・そもそも、どうしてそうした本件拡張は提案に至ったのか?

     ここまでに申し上げた通り、私こじんとしては、

     可能ならば本件拡張の実装をご再考いただきたいと思うところです。

     しかしながら、なぜそうした提案が行われたのかについても

     私は知りたいと考えています。

     

     現状の、この文面は、あくまで私めの思うところの表明に過ぎず、

     先方が提案を行うにいたった事情を承知しての発言ではありません。

     そもそもご存知なかったのかとも愚考しておりましたが

     あるいは拙作をご承知のうえで、それでも必要と判断する事情があったのかとも考えられますし、

     はたまた他の方からご提起なられた提案であるのか、

     そうした、本件拡張に関する事情を、私は把握したいと思っているのです。

     私は、もし可能ならば、このメッセージを私めの一方的な主張とせず、

     CWの将来へ何をどう搭載するべきかの、建設的なやりとりにしてゆきたいと願うところです。

     

     

    ・結句(という名の蛇足めいたなにごとか)

     ちなみに、拙作と類似する機能の実装に関して、

     参考にしたのか否かという問い合わせをしたところ、

     例のエンジン開発者は、このように発言しました。

     

    「僕の作ってるソフトの一機能に対して、

     「項目に重みを付けて評価する方法は自分

     が発明した物だこのパクリ野郎」と主張す

     る怪文書が(また)来たんだけど、この人

     古代ギリシャの数学者か何かなのかな…。

     今の時代では初心者用のアルゴリズム本と

     かに載ってるレベルですよ…。」

     

     できることならば、やはり先方におかれましては、

     (あるいは私たちは、)このような開発者とは

     違うエンジンを目指すべきではないかと希望しまして、

     筆をおかせていただくしだいです。

     長文乱筆失礼しました。

  2. k4nagatsuki
    wrote

    k4nagatsuki さんがあなたに Bitbucket でダイレクトメッセージを送信しました:

    ご意見ありがとうございます。

    すぐ返信を差し上げたいのですが、長文のご意見ですので、内容を整理して返信を書くのに時間がかかりそうです(平日ですし……月曜日だって? なんてこった)。

    トラックに轢かれたりしない限りは必ず返信いたしますので、何日かお待ちください。

  3. 権兵衛 七篠
    wrote

    権兵衛 七篠 さんがあなたに Bitbucket でダイレクトメッセージを送信しました:

    お返事ありがとうございます。

    先々月から一月以上、ほぼかかりきりで執筆して、

    当座申し上げたいことの8割9割がたは押込んだつもりです。

    (納得いくまで詰め込んでいたら七千文字近くなってしまいましたがorz)

    本来は金曜の夜にでも投下したかったのですが、

    「拡張の具体例」で提案したい内容をしぼりこんで

    (収拾つかなくなるので削りましたが、本当はさらに没ネタ複数.......)

    結局日曜の深夜となってしまいました......

    脱稿が実装にまにあわぬどころかさらに半月後となってしまい、

    いろいろお手数生じてしまったのが少々残念ではありますorz

  4. k4nagatsuki
    wrote

    k4nagatsuki さんがあなたに Bitbucket でダイレクトメッセージを送信しました:

    お待たせしました。内容について返信します。

    できるだけ枝葉を刈り込んで本質的な事だけを述べたかったのですが、案の定長くなってしまいました。ご容赦ください。

    「評価条件」の着想について

    「評価条件」は、実装をご覧になれば一目瞭然の通り、1.50で台詞コンテントに追加された「評価メンバ」と同じものです。「酷似」どころではなく完全に同じです。

    元々1.50で評価メンバが実装された時、私は、これは台詞コンテント内に収めるにはオーバースペックで、複雑すぎ、しかも話者選択だけに使われるのでは応用も利かないと考えました。このアイデアは、台詞に収めたりせず「評価メンバ選択分岐」のようにするべきだと考えました。これがそもそもの着想です。従って、今回の実装は評価メンバと手法も内容も同じです。

    この提案は私一人で行いました。Issue #277(https://bitbucket.org/k4nagatsuki/cardwirthpy-reboot/issues/277)と#294(https://bitbucket.org/k4nagatsuki/cardwirthpy-reboot/issues/294)に書いてある事が全てで、他の所での相談などは何もありません。私はこういう仕様の話はオープンにするべきだと考えているので、そうした事柄があれば載せています。

    そもそもこのやり取りも、内密にやるのは好ましくないなぁと考えています。今からでも記録に残る形で公開にできるとありがたいのですが(もちろん、嫌ならいいです)。

    >そもそも拙作についてご存知だったか。

    私はたこおどり氏の「冒険者の喧嘩のさせ方」を所持していますし、遊んだこともあります(エディタで中を見た記憶はないです)。入手時期は、ファイルの更新日時を見る限りでは2014年の8月です。1.50のリリースは2013年だったはずで、私はそれ以前から上記の考えを抱いていたはずなので(この辺は記憶に頼りますが)、STARの影響は、意識的にも無意識的にもありえません(なおSTAR(std.)は先程(11月30日)ダウンロードしてきました)。

    では1.50の「評価メンバ」がSTARの影響を受けているかという事については、私はなんとも言いようがありません。受けている可能性もありますが、あの方はCWのシナリオに多く所持してはいなさそうですし、要素ごとにポイントを振って得点の高いものを採用するという手法はボードゲームやカードゲームのCPU思考の設計では古典的なものであり(たぶん今使われているアルゴリズムも基礎はそれです)、CWにおけるクーポンの考え方と組み合わされば、評価メンバのアイデアが自然に出てくる事も充分にありえると思います。

    台詞コンテント内に限定するという設計ミスを犯しているところからして、おそらく評価メンバは上記の一般的アルゴリズムと台詞コンテントでのクーポンの取り扱い方をヒントに発想されたものである気がします。台詞コンテントが発想元でなければ、私が今回したように、選択分岐の形を取っていたはずです。

    ただ、正直言って、その真偽は私には分からない事です。

    「評価条件」の目的について

    現在以上の面倒や複雑性をもたらす事なく、評価メンバという仕組みの本来のパフォーマンスを発揮できるようにする事が、メンバ選択分岐の評価条件の目的です。

    評価メンバの仕組みは私の考えでは複雑すぎますが、実際に運用され、使われているようです。それは、単に話者を選択する時にだけ使えるものとしても、実際に役立っているようです。となれば、話者選択以外の用途に使えた方がよいですし、まったく同じ仕組みを用いれば複雑性の問題は無視できます(同じ仕組みがすでに存在しているので、学習の応用が利く)。

    選択分岐の形にする事により、話者選択以外にも使えるようになり、台詞ではメッセージ抜けバグの元となりそうな「0点以下は選択除外」という要素も、「特定条件のPCがいない時に限って処理を行う」というような形で活きるようになります。

    提案と実装にあたり、私は評価メンバの仕組みに手を加えることなくそのまま流用しました。何か付け加えたり変えたりすれば複雑さが増してしまうからです。上記したように、私の考えではこれはすでに複雑すぎるので、さらに何かを付け加えるなどありえない事でした。

    従って、

    >(1)思い切ってSTARシステムの機能をまるごとエンジンに搭載する。

    これは複雑過ぎて「ありえない事」ですし、

    >(2)地味だが小回りの利く拡張を重視し、飛び道具はユーザーに任せる。

    評価メンバが登場する前であれば私もこれを飛び道具と判断したかもしれませんが、すでに存在し、使われている仕組みなので、すでに地に足の着いてしまった道具です。

    私はこの程度のものが華々しい新機能とは考えていません。単なる評価メンバの応用です。シナリオ作りに使える道具が一つ増えるだけの話です。

    シナリオを作る道具・材料という事について

    >これまでのユーザーが工夫や応用を通じて形にしてきたことを

    >無造作にエンジンへ取り込んでゆくことは、道義上の問題にとどまらず、

    >CWの発展を支えてきたユーザーの自主性ならびに

    >今後のCWの将来性も阻害すると私は懸念する。

    これについては、私はまったく賛同できません。いくつか例を挙げます。

    昔、コンピュータプログラムは機械語で記述していました。ループ処理一つを書くにも、単純に「ループしろ」と書くわけにはいかないので、ラベル・ジャンプ・スタックとレジスタなどいくつかの道具を用いて面倒な手順でループを構築する必要がありました。今時の言語では、`for`と書けばそれで片付きます。では、工夫や応用で実現してきたループ処理を言語に取り込んでしまう事でプログラマがやる気をなくしたりプログラミングの将来性が阻害されたりしたかというと、そんな事はなく、ループを簡単に書けるようになった事で、プログラマは、ループ処理を書くそもそもの目的であった、本来やりたかった処理を書く余裕を得て、もっと大規模で複雑なプログラムを作れるようになりました。

    プログラミングの例がピンと来ないようでしたら、自動車のオートマの仕組みはどうでしょうか。MT車にあったギアチェンジという操作を簡略化することで、運転者は自分でギアチェンジを行えなくなった代わりに、気を逸らさず、周囲に注意する余裕を得て運転する事ができるようになりました。

    CardWirthの例では、台詞コンテントがあります。これはCWの登場当初は存在しなかったので、男女間の口調分けなどは簡単な作業ではありませんでした。やろうと思えば多くの台詞に分岐を挟む必要がありました。しかし台詞コンテントという道具を得られたことで、シナリオ作者は毎回分岐を作る手間をかける事なく、口調分けを行う事ができるようになりました。

    これらの例に共通するのは、道具は、それを作ったり使ったりする事が目的ではないという事です。道具は、本当の目的を果すために必要だから、本当の目的にかける時間を削ってでも作ったり使い方を覚えたりせざるをえないものなのです。

    プログラマはプログラミング言語に用意された道具を使って、自分が本来やりたかった処理を書く事ができるようになりました。言語が、過去に発明された様々な道具を取り込むことで、今では昔の機械語プログラミングなどとは比較にならないほど巨大なプログラムを作る事ができるようになっています。

    オートマのおかげで自動車の運転は簡単になり、運転者はハンドルとアクセルとブレーキに集中できるようになりました。いつか自動運転が出てくれば、運転などという手間をかける事もなしに目的地へ向かうという、本当に本当の目的を果す事ができるようになるでしょう。

    CardWirthでは、シナリオ作者は台詞コンテントのような道具を得る事で、口調分けのような作業に手間取る事なく、ダンジョンや、戦闘や、物語に時間をかける事ができるようになります。

    今のところ、私はこの考え方を曲げる根拠を持っていません。私は四則演算のパッケージが存在する事を知っていますが、それは私がCWPyに四則演算機能を載せる事を躊躇する材料とはならないでしょう。大変な手間をかけてパッケージを使うよりもずっと手軽に計算が行えるようになれば、大量の計算を行うシミュレーションのようなシナリオを現実的な時間で作れるようになるからです。

    この程度の新しい機能は、ユーザの自主性を奪いません。ユーザが本来やりたかった事をやれるようにするための、ただの道具だからです。道具が思ったように使えるものでなければ、ユーザは改めて別の道具を作る必要に迫られますが、その邪魔になるわけでもありません。

    道具自体を作るのが目的であるという場合もままあると思いますが、エンジン・エディタ側に使える材料が増えるという事は、目的であるところの道具を、その材料を使ってより強力にできる事を意味します。例えばSTARが現在持つ機能を評価条件分岐で簡略化できれば、パッケージの複雑さを減らす事ができ、それによってバグを減らす事ができ、さらに拡張する余裕が生まれるはずです。勇敢状態だと選択されやすくなるとか、レベルが高いほどリーダーに選ばれやすくなるとか、そうしたアイデアを追加する余裕ができるはずです。

    たかが1つのイベントコンテントに、あまり複雑な機能を詰め込むわけにはいきません。何度も書きますが、私は評価メンバですら限度ぎりぎりの複雑さだと考えています。評価メンバがすでに存在しなければ、私はこの機能を考え出せても提案しなかったでしょう。それでもこの機能はまあまあ小さいので(複雑なのは考え方で実装ではないので)、いくらでもイベントコンテントを詰め込めるパッケージとは、最初から比較になるようなものではありません。むしろ取り込んでパッケージの強化の材料にしてしまえる程度のものです。

    また、もちろん、これは新しい様々なパッケージを作る道具としても使えます。

    >・パッケージイベントで十分なのでは?

    充分かもしれませんが、パッケージを流用するのは簡単ではありませんし(強力なインポート機能を使えばいいのですが)、パッケージごとに使い方を学ぶ必要がありますし(これは内容が複雑なほど大変で、おそらく評価メンバのような小さな機能を学ぶよりも難しい)、変数などが場所を取りますし(STARには無いようですが)、ライセンスの問題もあります。例えば私は変名でいくらかシナリオを作っていますが、素材を除いたシナリオ本体のファイルができるだけパブリックドメインのように扱えるよう努力しています。STARのパッケージを含めると、その目標は達成不能になります。

    また、パッケージに致命的なバグがあった場合は、使用しているシナリオ全てがパッケージを更新しなければならないという、現実的ではない事態が発生します。さらにパッケージが入手不能になっていたりすると、もうどうしようもなくなる恐れすらあります。これを解決するにいはエンジン付属パッケージのようなまったく新しい仕組みが必要になりますし、それではシナリオ機能の追加と本質的に同じ事になってしまいます。

    蛇足かもしれませんが、上記の事はプログラミングにおける「ライブラリ」という仕組みが抱えている、いまだに解決されていない問題と同質のものです。それでもライブラリはプログラミングに欠かせないものですので、パッケージ配布が根本的にだめというわけではまったくありません。

    > 何より、パッケージイベントという実装は、エンジンのレベルで実装された機能が持つ、

    > 今後の「仕様衝突」という懸念と本質的に無縁であります。

    機能をパッケージで実装する事に関しては、これが一番魅力的な理由ですね。シナリオの機能を拡張する必要が無いのはいい事です。いわゆる「それはライブラリでできるからプログラミング言語本体に組み込む必要はない」というやつです。ただ、実際には上述の理由でなかなか大変です。

    最後に付け加えておくと、この件について、私は処理時間についてはまったく気にしていません。本質的に処理速度とは関係のない道具です(とか言ってるととんでもない使われ方をするんだよな)。

    CWNextへの機能の追従について

    これに応えるには、複数エンジン・複数エディタという状況を私がどう考えているかを説明する必要があります。

    まず、互換性のないエンジンが複数存在する事で害を被るのはシナリオ作者とプレイヤーです。あのシナリオはこのエンジンではプレイできない、このエディタで作るとあの人はプレイできない……という状況はよくありません。ですから、私は、テキストを編集するためにいくらでもテキストエディタを選択できるように、どのエンジンやエディタを選んでも全てのシナリオがプレイでき・編集できる状況が理想だと考えています。

    残念ながら現状はそうなっていませんし、私の力でどうこうする事もできませんが、将来のその状況を多少なりとも目指した方がよいと考えています。そのためには、CWNextにある機能をCWPyにも搭載しておき、いつか互換性を保てる状態が来た時の準備をしておく必要があります。そのため、CWNextが持っている機能をCWPyにも追加するという行動が発生します。

    様々な機能のご提案について

    新しい提案はどんどんしていただけると嬉しいです。

    ぜひ、Issue #277(https://bitbucket.org/k4nagatsuki/cardwirthpy-reboot/issues/277)をご覧になってください。パッケージ内のローカル変数のような機能はすでに提案されていますが、具体的な形にはなっていませんので、そこに具体案を与えるもよし、ここにないアイデアを提案して追加するのもよしです。

    ちなみにCWPyでは参照素材をそのまま宿に持ち帰るので、素材を格納する必要はありませんし、cwxeditorにはすでにマクロにも似たイベントテンプレート機能やスクリプト機能が搭載されていますので、よろしければそちらもご覧ください。

    ---

    次の段落は完全に私の印象を語っているだけですので聞き流していただいた方がいいかもしれません。

    どうも今回のご意見は、評価条件とSTARの仕組みが競合しており、それによってSTARの立場が脅かされるのではないかという懸念とそれによる反感が先に来ており、理屈は後から付け加えたもののように見えます。重み付けというゲームプログラマなら大抵知っている考え方に対して剽窃や盗用という強い言葉を用いて非難されたり、ただの1コンテントとパッケージセット全体を比較されたり、他の全ての主張と真っ向から矛盾するにもかかわらず「STARをエンジンに丸ごと組み込む」という提案をされたりするところから、私はそのように感じました。

    しかし、少し冷静になって考えていただければ、今回の機能はSTARのようなものを置き換えるためのものではなく、むしろそうしたシステムの土台に使える材料を増やすための試みである事が分かるはずです。

    競合・対立するものという考え方から一旦離れて、これはSTARのようなパッケージをもっと高度で強力なものにするのに使える道具だというような見方で捉え直す事を試みていただけないでしょうか。

    ---

    最後に、多大な時間をかけて長いご意見を書き送って下さった事に感謝します。ありがとうございます。

  5. k4nagatsuki
    wrote

    k4nagatsuki さんがあなたに Bitbucket でダイレクトメッセージを送信しました:

    12月2日に送信したメッセージは届いていますでしょうか。

    CWPyは今年の9月から1箇月ごと、毎月1日にα版をリリースしているのですが、12月のαリリースは、評価条件の追加とそれに対する反対意見がある事から、私の判断で差し止めている状態です。そこから進展がないのですが、そろそろ正月中に予定している次のαリリースをどうするべきか判断しなくてはなりません。

    現実的には次のいずれかを選択する事になります。

    1. 評価条件込みでαリリースする。議論の進展により将来取り除かれる可能性がある事をアナウンスする。

    2. 評価条件を取り除いてαリリースする。おそらくエンジン側はそのままにしてエディタのテスト版からUIを取り除く事になります(それで機能にはアクセスできなくなる)。

    いずれを選択するにせよ、機能が実装された後から議論が始まった以上、「なぜ・どういう話があって取り除くという事になったのか」をきちんと説明しなくてはなりません。このダイレクトメッセージによるやり取りを公開するのが最善ですが、それが無理であれば、せめて要約版を作る必要があります。

    お尋ねしたいのは以下の点です。

    * 評価条件機能を含むαリリースは可か否か?(α版なので後から機能を取り除く事は依然可能です)

    * やり取りを公開して構わないか?(公開しない場合は要約版を作る事になりますが、その内容については改めて相談が必要です)

    こちらの事情で申し訳ないのですが、お返事いただければ幸いです。

  6. 権兵衛 七篠
    wrote

    権兵衛 七篠 さんがあなたに Bitbucket でダイレクトメッセージを送信しました:

    どうもご迷惑おかけしております、

    あけましておめでとうございます、

    今年も宜しくお願い申し上げます、

    七篠権兵衛です。

    内容を精読して、返信を鋭意執筆中ですが、

    思うところ多すぎてまだうまく言葉にできかねてるしだいです。

    (いざかきだしてみたら「「互換性至上主義」への疑問」にまで話が飛び火する始末)

    うまくまとまるかどうかわからない

    (下手するとtotal一万字近い未整理フレーズの福袋状態かも)ですが、

    とりあえず1―2週間を期限に切って投下の予定ででいこうとおもいます。

    とりいそぎ現状の結論だけ書いておきます。

    * 評価条件機能を含むαリリースは可か否か?(α版なので後から機能を取り除く事は依然可能です)

    →消極的な理由ですが、可です。

    * やり取りを公開して構わないか?(公開しない場合は要約版を作る事になりますが、その内容については改めて相談が必要です)

    →このままではなく要点を整理する公判前整理手続(?)があったほうがよいと愚考します。

    以上です。

  7. 権兵衛 七篠
    wrote

    権兵衛 七篠 さんがあなたに Bitbucket でダイレクトメッセージを送信しました:

    どうもご迷惑おかけしております、

    あけましておめでとうございます、

    今年も宜しくお願い申し上げます、

    七篠権兵衛です。

     

     

    内容を精読して、返信を鋭意執筆中ですが、

    思うところ多すぎてまだうまく言葉にできかねてるしだいです。

    (いざかきだしてみたら「「互換性至上主義」への疑問」にまで話が飛び火する始末)

    うまくまとまるかどうかわからない

    (下手するとtotal一万字近い未整理フレーズの福袋状態かも)ですが、

    とりあえず1―2週間を期限に切って投下の予定ででいこうとおもいます。

     

     

    とりいそぎ現状の結論だけ書いておきます。

    * 評価条件機能を含むαリリースは可か否か?(α版なので後から機能を取り除く事は依然可能です)

    →消極的な理由ですが、可です。

    * やり取りを公開して構わないか?(公開しない場合は要約版を作る事になりますが、その内容については改めて相談が必要です)

    →このままではなく要点を整理する公判前整理手続(?)があったほうがよいと愚考します。

     

     

    以上です。

  8. 権兵衛 七篠
    wrote

    権兵衛 七篠 さんがあなたに Bitbucket でダイレクトメッセージを送信しました:

    荒れれ、訂正をしたはずなのに投稿が二つダブっている?

    投稿したはずの文面が見つからなかったりでなんだか操作をミスして

    このやりとりをまとめて削除していないか心配です;

  9. k4nagatsuki
    wrote

    k4nagatsuki さんがあなたに Bitbucket でダイレクトメッセージを送信しました:

    お返事ありがとうございます。今年もよろしくお願いいたします。

    削除はされていないようなので大丈夫ですよ。

    具体的な内容の返信を頂いていないので推測ですが、まだこの議論は丸く収まるような段階にはないのではないかと思います。そうなると、機能のαリリースはおそらく妥当ではありません。消極的な理由で可との事ですが、その理由を教えていただけないでしょうか。

    また、話が発散してややこしいことになるので、飛び火のような部分はできるだけ別にIssueを立てるなどして別個に議論していただけるとありがたいのですが、どうしても切り離せない事柄であれば仕方ありませんので、遠慮無くまとめてお送りください。

    やり取りの公開については、私の方で数日中に要約版を作ってお送りしたいと思うのですが、もし公開したくない理由が無いのであれば、要約などせずそのまま公開した方がいいのではないかと思います。編集の際に恣意が入り込む余地がありませんし、要約版を作ったりその内容について話し合う手間が省けますし、何よりその後公開の場で話を進める事ができます。

    もちろん、公開したくない理由がある場合は話が別ですが、整理手続という言葉を使われている事からして、そうでないのではないかと推測しています(大外れだったらすみません)。

  10. k4nagatsuki
    wrote

    k4nagatsuki さんがあなたに Bitbucket でダイレクトメッセージを送信しました:

    やり取りの要約版を作成しました。意見を恣意的に変えてしまっているとか、外せない部分を外してしまっているというような事があれば、修正しますのでご指摘ください。

    また、繰り返しになりますが、本当は要約などせず全文を公開した方がよいと私は考えています。

    ---

    七篠さんの11月29日付のご意見を要約すると以下のようになります。

    * 「評価条件」は七篠権兵衛作成の「STAR」と酷似している。機能面では「STAR」に劣る。

    * 盗用ではないかという疑念を抱いているが、「評価条件」の提案者は「STAR」を知っていたのか?

    * ユーザが実現した機能をエンジンに取り込む事は道義的にも将来性の面でも問題がある。そのような行動を取るとユーザがやる気を無くしてしまうのではないか。

    * 次の2つの解決方法を提案する。

    * 「STAR」をエンジンに搭載する。

    * 評価条件のような飛び道具はエンジンに搭載せずユーザに実現させる。

    私の12月2日付の反論は以下のようになります。

    * 「評価条件」の元は「評価メンバ」であり、内容は完全に同じである。

    * 提案者は機能を思いついた時点では「STAR」を知らなかった。「STAR」のチュートリアル「冒険者の喧嘩のさせ方」を所持しているが、ファイルは1.50リリースより後の日付であり、思いついたのは1.50リリース前である。

    * 複雑な事を簡単にできるようにする事には、ユーザをその先の問題に集中できるようにする意義がある。

    * 「STAR」はエンジンに搭載するには複雑すぎる上、この提案は他の主張と矛盾している。

    * 「評価条件」は複雑だが、すでに「評価メンバ」が存在する事で正当化できる。

  11. k4nagatsuki
    wrote

    k4nagatsuki さんがあなたに Bitbucket でダイレクトメッセージを送信しました:

    こんにちは。1月6日及び8日のメッセージは届いていますでしょうか。

    こちらではお返事は確認できていないのですが、もうそろそろ2月1日になってしまい、さすがに3回連続でαリリースを行わないというわけにはいかないので、当日までお返事をいただけない場合、評価条件分岐をChangeLogから外した上でエディタ側の実装も一時的に外し、その状態でαリリースを行おうと考えています。

    もちろん理由の告知無しでそうした事はできないので、ある方とのやり取りがあり、まだそのやり取りの公開の可否が分かっていない(要約版も含めて)という事を告知したいと考えています。

    無断でそうした事はしたくないのですが、リリーススケジュールを一ヶ月ごととしている事や、理由を公にせずに機能を外す事はできない事などからどうしてもそうせざるを得ない事をご理解いただければ幸いです。

    問題がありましたらぜひ当日までにお知らせください。

  12. 権兵衛 七篠
    wrote

    権兵衛 七篠 さんがあなたに Bitbucket でダイレクトメッセージを送信しました:

    すいません、ホントスイマセン●| ̄|_...... 

     

    一ヶ月ちかくかけましたが、整理に(あるいは説得できそうな文面をひねりだすことに) 

    失敗しましたので、観念して放流します。 

    要約や公開もあきらめてやり取りのすべてボッシュート、 

    「完全非公開」にする前提にして、肩の力抜いて整理失敗のRAW文章をつらつら出力してきます。 

     

     

    いちおうかんがえたこと要約風味に書きますと 

    ・そもそもSTARシステムのようなパッケージによる実装が存在しているにもかかわらず、 

     わざわざエンジンに実装する理由はわからない 

    ・評価メンバなどの複雑な機能はパッケージによる実装で対応するほうが自然だと思う 

    ↓ 

    ・評価メンバは実際複雑な機能であるが、 

     いっぽうで普及した機能でもある以上、その拡張を考えるのは自然なことである 

    ↓ 

    ・すでに複雑な機能ならば、やはり拡張はまずくないのか。 

    ・理由がどうあれ複雑なものをさらに拡張する方針を採るのであれば、 

     中途半端な拡張で茶を濁すわけにはいかなくなる。 

    ↓ 

    ・理由がどうあれ地に足ついた機能である以上、その拡張を考えるのは自然なことである 

    ↓ 

    ・もう結構 消極的ですが「可」です 理由がどうあれ実装したいならそれで結構です 

    といった感じです。 

     

     

    「消極的な理由で可」、というのは、もっと平たく、下品に表現してしまうならば、 

    返信の内容にとても納得しました、という意味の積極的な「Yes」回答ではなく 

    先方に納得いただけるような説明や理由は思いつきませんので、私は「No」というのを諦めます、 

    といった意味合いです。 

     

    自分のなかではまだ釈然としないものがあるのですが 

    多分先方にそれを伝えること、理解してもらう自信といいますか、 

    見込みがまったくないので、ともいえるでしょうか。 

    「まったく賛同できません」という強い表現をなさるくらいですから、 

    おそらく七篠のリクツは先方にまったくわからないことなのだろうと思ったのです。 

    他所から文句や疑問が一切出ていないことも考えると、 

    これに問題は多分存在しないといいますか、 

    「STARの立場が脅かされるのではないかという懸念とそれによる反感が先に来ており」、 

    で実際正しいのかもしれません。 

    だとすれば自分が黙っていれば解決する問題であり 

    最早あれこれ云うのは出すぎたことだろうとも存じます。 

     

    そうして自分は諦める代わりに(または諦めたついでで) 

    やり取りを非公開にすることを選択すると思います。 

    CWpy開発の方針を決める最終責任者にとって、なんらの興味や理解が生じなかったやり取りを 

    そのまま他人に見せたところで、個人的にはいい恥さらしにしかならない、とも考えています。 

     

    私自身、やり取りを公開の場で行うのがやぶさかなわけじゃないですし 

    密室主義がけして好きだとは云いませんが、 

    ただこの問題については、自分がCWPyに期待するものの本質がなんであるのかも含めて 

    他者の好奇の目から離れて率直に伝えたいと思った結果が、こういう形だったわけです。 

     

    2015/11/29付の投稿文で 

    「NEXTの複製じゃないエンジンを世に問うべきでないか」 

    「このような開発者とは違うエンジンを目指すべきではないかと希望」 

    といった表現をしましたが、 

    要はCWPyはNEXTの手法を真似しない新しい設計思想を提示するのだろうと、 

    そんなことを勝手ながら自分は期待していたわけです。 

     

    実際バックパックやNEXTのコンテント互換などの実装に 

    慎重な振る舞いをしているところからみても 

    かならずしもNEXTを盲従するつもりはないのだろうとみていました。 

     

    そこにきて「NEXTの機能をさらに拡張しますよ」という発表で、 

    自分は強烈な違和感を感じた、というわけです。 

    「すでに複雑すぎる」ともいう代物なのに、なぜ拡張しようとするのか。 

    「すでに地に足の着いてしまった道具」だからだとすれば、 

    その道具をそのまま移植するだけでも十分なのに、どうして拡張するのか、 

    自分にとっては、その方針が「まったく賛同できません」というわけです。 

     

    もしも拡張する方針が可能なら 

    「それこそSTARの機能とかもエンジンに盛っちゃっておkにならなくね?」 

    という話になるわけで、もし「そのりくつはおかしい」という事ならば 

    「だったらそもそも拡張すること自体に無理があるんジャマイカ」と自分は感じたしだいです。 

    その道具をそのまま移植するだけで十分だし、 

    それ以上の拡張をあらかじめやっておく必要は果たしてあるんだろうか、 

    むしろ、そうするくらいなら、ユーザーの道具作る部材を、もっと充実させてほしい、と 

    自分は考えていたわけです。 

     

    しかしながら、その考えに対して、 

    「でも便利になるんだから拡張することの何が問題なのか」という 

    反論が待っているか考えて、 

    その想定に対し、結局自分はそこで反論の言葉が尽きてしまいました。 

    いろいろの抗弁を考え、さらにひと月ほどあれこれ粘ってみましたが、 

    どの道「あるていどの不便を受忍するほうが結局都合がいい」という結論や 

    「利便を全力で追いかけるとむしろ不都合にぶつかる」という結論に 

    やはり「まったく賛同できません」という答えが返ってくるのは自明だろうというのが、 

    「もう結構 消極的ですが「可」です 理由がどうあれ実装したいならそれで結構です」 

    という表現の真相なのです。 

  13. 権兵衛 七篠
    wrote

    権兵衛 七篠 さんがあなたに Bitbucket でダイレクトメッセージを送信しました:

    訂正:6行目(「RAW文章をつらつら出力してきます。」)次の行一文追加

    遠慮も配慮も礼儀も道義も投げ出したオフレコ上等の駄文ですが、どうかご容赦いただけると幸いであります。

  14. k4nagatsuki
    wrote

    k4nagatsuki さんがあなたに Bitbucket でダイレクトメッセージを送信しました:

    返信ありがとうございます。

    誤解がありそうなので、私が「賛同できない」と言った事について再度説明しておきます。

    >これまでのユーザーが工夫や応用を通じて形にしてきたことを無造作にエンジンへ取り込んでゆくことは、道義上の問題にとどまらず、CWの発展を支えてきたユーザーの自主性ならびに今後のCWの将来性も阻害すると私は懸念する。

    最初にいただいたご意見のこの部分について、私は「まったく賛同できない」と書きました。例に挙げた通り、ユーザの自主性を奪う事にはならないし、将来性を破壊する事にもならないと考えるからです。七篠さんが仰る全ての事柄に賛同できないと言ったわけではないので、その点は誤解なきようお願いします。

    また、私の主張の内容は、

    >むしろ、そうするくらいなら、ユーザーの道具作る部材を、もっと充実させてほしい、と 自分は考えていたわけです。 

    評価条件はまさにこの部材であるという事を言っていますし、この点で合意できれば理想的だと思っています。CWには1.50からすでに評価メンバが存在し、評価条件は、その構造に一切手を加えずにメンバ選択分岐で使えるようにしたというものですから、拡張されたとしたらメンバ選択分岐コンテントの方であって、評価の仕組み自体ではありません。

    仰られている内容を読むと私が評価の仕組み自体を拡張したかのように誤解されているようですので、その点も訂正させてください。

    ---

    私は議論で相手を言い負かすことには意味はなく、お互いに納得することが最善だと考えています。

    どうも、話の内容を見ると、お互いに伝えたい事が正しく伝わっていない点があるように思えます。合意できていない点を整理して、一つ一つ話し合えば最終的に納得していただけそうな気がしているのですが、そうした形で話を続けられないでしょうか。

    ただリリーススケジュールは正直厳しいので、とりあえず次のα版は黙ってリリースした方がいい気もしています……。黙ってとなると評価条件を入れたままのリリースになりますが、それによって評価条件を使うシナリオが現れると、取り除くのが状況的にちょっと難しくなるかもしれません(αだから大丈夫だと思いますが)。その点はご了承ください。

  15. 権兵衛 七篠
    wrote

    権兵衛 七篠 sent you a message on Bitbucket:

    う~ん、正直、納得もらえるように自分が言葉をうまく扱えていないというか。 

    自分のなかで持っている、思うところ考え事を言葉として形にする能力というか。 

    プレゼン力が足りてないなーと、頭を抱えているところです。 

     

    とまれ、えーとαリリース、了解です。ご迷惑おかけしてすいませんです...... 

    互換性重点だから、最悪作例出て削れなくなったー、であっても、もう覚悟はできました(苦笑 

     

     

     

    んで、本題をば。 

    これまでのご返信と 

    「評価条件はまさにこの部材であるという事を言っていますし、この点で合意できれば理想的だと思っています。」 

    あたりを手がかりに 

    当初の自分が考えてたことも思い出しながら、もういちど表現しなおしてみると、 

    「この手の複雑機能の実装を、エンジンの単一コンテントにするのはまずい。 

    CWpyは互換性重点な設計だから、エディタで単一コンテントが必須なのかもしれないが、 

    そうだとしても、分解可能な実装はできないものだろうか?」みたいな感じになるでしょうか。 

     

     

     

    残念ながら、現状の「評価メンバoverメンバ選択」とでもいいますか、「「評価条件」コンテント」の仕様は、 

    自分の目線では「道具作る部材」じゃなくて「道具そのもの」にみえるのです。 

    拙作なSTARという道具とほぼ同じ機能を一つのコンテントに収容し、 

    STARのパッケージコールをそっくりそのまま置換できるという点でも、 

    やはり自分の視点では、これ道具としてみるほかないな、と思ってます。 

     

    もしこのコンテントが、STARの機能を丸ごと置換せずに一部だけを置換する、 

    といったことを可能にするものであったのならば、 

    自分にとって、部品といわず部材であるとみなすこともできたでしょう。 

    ですがこのコンテントに、現状そうした切り売りは存在しないかと愚考します。 

    自分のRAW文章で表現すれば「融通きかないモノリシックな代物」にみえているのです。 

    率直に言って、現行の、このモノリシックな仕様では、 

    自分にとってあまり魅力的でなく、この「「評価条件」コンテント」を利用して 

    何か新しい応用を見出すことは、少なくとも自分には困難だと認識しています。 

     

     

     

    STARみたいなロジック作ってきた人間にとって、 

    現状の「「評価条件」コンテント」が部材として使えない代物だとするならば、 

    他方ロジックを作ってこなかった人間が、 

    現状の「「評価条件」コンテント」を道具として利用した場合にはどうなるか。 

     

    「評価条件」コンテントの仕様でやりたいことを満足できればよいですが、 

    かりにユーザーのやりたいことが「評価条件」コンテントの仕様からすこしでもはみ出しちゃうと、 

    (ex.選出されたメンバは十分な評点を獲得していたか確認したい、など) 

    ユーザーにはかなり極端な(というか、あんまうれしくない)二択が待っている気がするのです。 

    すなわち「このコンテントの仕様内でがまんしてやりたいことあきらめる」か、 

    「コンテント使うこと自体をあきらめて、既存コンテントで丸ごとアセンブラする」か。 

    もちろん今までアセンブラする以外の選択肢がなかったのは事実ですが、 

    だからといって対案が仕様ガンギマリの「評価条件」コンテントこれ一本では、 

    自主性や将来性に悪影響ないといわれてもなぁ、というのも本音だったりします。 

    (.......杞憂だと一蹴なさるのかもしれません。 

    このあたりの懸念の表現は、何度も書いて没にしてますので 

    「先方に納得いただけるような(中略)諦めます」とするのがほんらい利口と云うか、 

    効率的なのかもしれません。)) 

     

     

     

    「評価条件」コンテントを丸ごと使うよりは融通が利いて、 

    ロジックの総アセンブラよりは幾分か手軽な選択肢は得られないものか。 

     

    個人的にひとつ思うことは、このモノリスなコンテントを分解して 

    一部機能のつまみ食いもできるような柔軟さは持てないものか、ということです。 

    選出をつまみ食いできればクーポン以外での評価もできますし(※1)、 

    評価をつまみ食いできれば評価パターン同士比較したりもできる(※2)でしょう。 

    もちろん、モノリシックなコンテントを解体して得た 

    これらアトミックなコンテントは 

    それらがおのおのユーザーの道具を作る部材にもなりえます。 

     

    (※1 

    クーポン以外の他の評価条件は別途クーポンに置換しておけばよい、 

    という発想もありそうですが 

    メンバ間を置換と評価で二度ループすることや 

    評価の条件が二箇所に分散して設置されるという意味で、 

    (あくまで自分としては)あまり気の進まない手法です。) 

    (※2 

    評価パターンを変えて評価を行い、プレイヤの冒険者はどのパターンに近いのか判定、など。 

    現状の「評価条件」コンテントの仕様では、「クーポンの存在を得点化し、合計の高いメンバを選出する」 

    という応用へ特化・簡略化しすぎて、かえって使いづらい感あります。) 

     

    実際上の問題で云えば、どのように解体し、 

    解体されたそれぞれの入出力はどのような仕様とするべきか、 

    そうして解体されたそれらアトミックなコンテントと、 

    その親というか解体前のモノリシックなコンテントとの関係はどうあるのがよいか、 

    その他いろいろ検討すべき事項が(下手したら敬遠されそうなくらいに)山積している 

    (そも自分のプレゼン力でどこまで通じてるかどうかも怪しい 

    (諦めて「じぶんエンジン」をフォークするほうが確実なのかもしれない....?))のですが、 

    ともあれもっと部材として使いやすく、なおかつ仕様の制約をある程度緩和できる 

    「中道」な選択肢はあってもいいのではないかな、と個人的には思うところです。

  16. k4nagatsuki
    wrote

    k4nagatsuki さんがあなたに Bitbucket でダイレクトメッセージを送信しました:

    機能の分割はまさに私が目標にしている所です。台詞コンテントから評価条件の部分を切り出して単独で使えるようにしたのは、まさにそのためです。現実的に可能かどうかはさておいて、さらに粒度を下げられるならそれに越したことはありません。

    話が一段落した感があるので、そろそろ公開の場に移せないでしょうか。今回台詞コンテントから評価条件を切り離した事によってどのような応用が効くようになるか・評価メンバの仕組みにどのような欠点があってどのような使い方ができないか・機能の粒度と使い勝手の問題などについて私は話す事ができますが、これらも、これら以外も、明らかにもっと大勢(というほどCWPy界隈には人数はいませんが)で話した方がよいはずのテーマです。

    例えば私はCWNextで話者を選択メンバにするオプションがついたことによって評価メンバが会話以外にも応用されている事を確信していますが、CWNextのシナリオは遊んでいないので、その点について話す事ができません。内々で話すのは、現状分析に対しても改善に対しても効果的ではないのです。

    なんでしたら評価条件についてのissueに私の方から概略を書いて話を進められるようにしても構いませんし、七篠さんから水を向けられても構いません。いかがでしょうか。

  17. k4nagatsuki
    wrote

    k4nagatsuki さんがあなたに Bitbucket でダイレクトメッセージを送信しました:

    2月13日のメッセージは届いていますでしょうか。

    最後のやり取りから一ヶ月近く経ってしまいました。一応CWPyのリリースに責任を負ってしまっている者として、今の状況を放置するのはあまりにも難しいので、改めてメッセージを送らせていただきます。

    評価条件の議論がCWPyのリリースの障害になっている理由について説明します。

    まず、異論のある機能を実装したままβ以上のリリースする事は原則としてできません。一度正式に実装してしまえば外せなくなるからです。ですから、異論が提起されたなら、その機能について改めて議論し検証されるべきです。その決着がつかないのであれば、一時的にその機能を外さなければリリースはできなくなります。

    そして、一度実装した機能を公開された理由なく外す事はできません。これは以前に書いた通りです。公に実装された機能を外すのであれば、その理由の説明が必要になります。従ってこのメッセージのやり取りの存在を公開しなくてはいけません。

    上記のような状態にもかかわらず、議論で双方が納得できておらず、その上議論の公開についての了解が取れていない(従って機能を外せない)ので、βリリースが行えない状態になっています。

    短期間なら構わないのですが、最初のメッセージをいただいてからすでに4ヶ月近くが経過しており、あまりにも時間がかかりすぎています。すでにCWPyは何人かが関わるプロジェクトになっており、私が個人的に全てを決定できるようなものではありませんので、この状況は非常によくありません。

    今の状況を改善する方策はいくつか考えられます。

    1. 何度もお尋ねしますが、議論の公開は行えないのでしょうか? それができれば問題は大部分解決します(というより非公開のやり取りなのがそもそもの問題です)。私はこの議論を理由に機能を外してβリリースを行うでしょう。多くの人の意見を聴く事もできます。

    2. やり取りが早くなれば落着までの時間も早まります。メッセージの推敲に時間がかかっているとしたら、そこをある程度省略する事はできないでしょうか? 意図が正しく伝わらないような箇所を後で見つけたり、誤解されたら、その時に訂正する事ができるはずです。

    このようなお願いをするのは心苦しいところではありますが、私としても止むに止まれない事ですので、ぜひ、なんらかの手を打っていただきたいです。よろしくお願いします。

  18. 権兵衛 七篠
    wrote

    権兵衛 七篠 sent you a message on Bitbucket:

    あああまた一ヶ月たってしまった...... 

    機能の分割や粒度を落とすことを考え始めてまた袋小路に突っ込んでいました(※1)、 

    いろいろ本当にスミマセン、七篠権兵衛です。 

    (※1 

    いっそのこと粒度さらに(下手すりゃ既存コンテント以下なくらいに)縮めて 

    直交性(アセンブラ的な意味で)をうんと引き上げたエンジン=コンテント間の中間言語めいた代物は 

    可能かどうかといった思案をしていました。 

    中間言語の実装を通して新しいコンテントの実装をこの言語で代替する(※2)という発想と換言できるかもしれませんが 

    話がもはや「台詞コンテントからの機能切り出し」への意見にとどまらず収拾がつかなくなっていたというか。 

    (※2 

    私の記憶が確かならば、Pythonのプログラムをシナリオに記述する、といった拡張も 

    CWpyの(またはXML形式なシナリオの)構想の中に存在していたはずです。 

    (喪スレの1234スレ目、>>286や>>288あたり参照、ソース古すぎてアレかなぁ?) 

    現行のRebootにあっては、「数十年先まで保つものを作る」といった観点で 

    多分にセキュアなものを目指すのであろう哲学からして、 

    「なかったこと扱い」または「実装不可能事項」みたいな扱いになってる気がしますし、 

    (当時の開発者がどのようなものを想定していたかは存じませんが、) 

    シナリオ製作者に悪意がなかったところで、錯誤や言語仕様の改定などによっては 

    厄介な問題の温床になりうることも(個人的には)想定できます。 

    (だからこそ中間言語あたりでどうだろうかと思案するしだいではありますが。))) 

     

    とても申し上げにくい、残酷な結論なのですが、率直に申し上げますと、 

    私個人としては、たぶん100%の納得は無理だろうなと、実は先月の時点で正直かなり諦めていたりするのです。 

    先方の誠意あふれる寛大な対応に対して、どこで見限るかの算段をしているようで 

    なんとも申し訳ないというか、心苦しいかぎりですが........ 

     

    先方の熱意や誠意と裏腹に合意形成の期待を諦めてしまっている自分ですが、 

    それでも将来へのため、曲がりなりにも議論をオープンにするための方策としては 

    「WSN追加案: メンバ選択分岐に評価メンバ式を追加」にて、 

    ここまでのやり取りを再演する形で要約する格好にするのはどうかと思案します。 

     

    つまるところ(かなりいい加減というか、乱暴な記述で恐縮ですが)こんな調子のやりとりをやってゆけば 

    自然な形で、公開へ展ばす導線として機能できないかなと思っているのです。 

    この形式の場合、やり取りの途中で外部からさらに意見やら発言が発生する可能性はありますし、 

    その他問題があると判断なさられまして箇条書き形式でやるのが宜しいとの判断であれば、 

    それに従おうかと存じます。 

     

    「この機能ってうちのSTARに酷似してる気がするけれど、 

    これどういう文脈というか、どんな経緯で実装されたんですか? 

    STARシステムのようなパッケージによる実装が存在しているにもかかわらず、 

    わざわざエンジンに実装する理由が不可解で、これが成り立つならば 

    STARの機能をまるごとエンジンに搭載するような話もありうると思うのです。 

    (自分としては、こういう飛び道具めいた機能を搭載するくらいなら 

    地味だが小回りの利く拡張を追加してもらうほうがずっとうれしいのですが)」 

     

    「現在1.50以降に実装されている台詞コンテントからの機能切り出しとして実装しています。 

    評価メンバは実際複雑な機能ではありますが、いっぽうで普及した機能でもある以上、 

    何らかの形で活用を考えてゆくのが自然なことであると考えています。 

    今回の実装では、すでにある機能から一部を取り出し粒度を下げ、 

    パッケージなどの開発に資することが狙いです。」 

     

    「残念ながら、粒度が減っているように感じられないのです。 

    拙作STARとほぼ同じ機能を一つのコンテントに収容し、 

    STARのパッケージをそっくりそのまま置換できるという時点で 

    個人的にはこの機能はパッケージ並みに粒度でかい感があります。 

    パッケージ並みの粒度を持ったものをパッケージの開発に資するのは困難であり、 

    パッケージ以外の利用を考えても、やはりその粒度ゆえ融通が利かない感があります。 

    その、たとえばこれもっと分解して評価だけとか選出のみとか切り売りできんですか?」 

     

    「機能の粒度は使い勝手の問題と密接な関係にあります。 

    現実的に可能かどうかはさておいて、さらに粒度を下げられるならそれに越したことはありません。」 

     

    ........といったところでしょうか。 

    重ね重ね自分自身の不徳のいたす処お詫びしたく存じます。

  19. k4nagatsuki
    wrote

    k4nagatsuki さんがあなたに Bitbucket でダイレクトメッセージを送信しました:

    お返事ありがとうございます。

    議論の主題はとりあえず一切を棚上げにして、内容の公開については同意していただけたようですので、そこに集中して話を進めさせてください。

    本来であれば全文を公開するべきだというのが私の考えです。この議論は本来公開の場でされるべきものでした。その場合でも、後から見る人が全文に当たるのは大変ですので、要約をつけた方がよいでしょう。

    ただし七篠さんは途中に非公開前提の意見を書かれていますので、全文公開はできません。従って問題のIssueに書くのは(公開の場はそこ以外にないでしょう)、要約だけになるかと思います。

    後から議論を追う人のために、話は箇条書きにした方がよいと思います。散文で書くと、要点が発散してぼやけてしまいます。箇条書きであれば、どこに争点があるかが明白になりますし、抜けを後から補うのも容易です。議論の順を追った要約を作るべきだというのは私もその通りだと思います。

    以下にIssueへのコメントの私案を挙げます。一部は以前に送付させていただいた案に手を入れたものです。要点に抜けがある場合はご指摘ください。

    これはあくまで、この非公開の議論の要約ですので、以前には書いていないが補足したい点などがあった場合は、要約の公開後にコメントする形でしていただければと思います。

    なお、私は要約の公開後、Issueで反論や応用例の提示などを行うつもりです。私は依然として、お互いがお互いを説得し、合意が形成された方がよいと考えています。

    --- 以下コメント案

    この評価条件について、昨年の11月の末に七篠権兵衛さんからダイレクトメッセージでご意見をいただきました。その後何度かのやり取りを経て現在に至っていますが、議論の公開についてある程度同意が取れたので、以下に要約を公開します。要約の内容については七篠さんの了解を得ています。

    全文については、同意が取れていないため、まだ公開できません。今後もできないかもしれません。申し訳ありませんが、ご了承ください。

    CWPyの年末年始のαリリースが遅れ、βリリースが現在も遅れている理由は、この議論が存在しているためです。反論があるにも関わらず機能を実装したままβリリースはできませんし、機能を一時的に外すにも理由の説明(すなわち議論の公開)が必要でした。今回、議論の公開は行えましたので、次のβリリースの時期までに話が落着しないようであれば、「評価条件」機能にはアクセスできなくした形でリリースを行い、WSN2以降への持ち越しとしたいと考えています。

    ---

    七篠権兵衛さんの11月29日付のご意見を要約すると以下のようになります。

    * 「評価条件」は七篠権兵衛作成の「STAR」と酷似している。機能面では「STAR」に劣る。

    * 実装への経緯を知りたい。「評価条件」の提案者は「STAR」を知っていたのか?

    * ユーザが実現した機能をエンジンに取り込む事は道義的にも将来性の面でも問題がある。そのような行動を取るとユーザがやる気を無くしてしまうのではないか。

    * 次の2つの解決方法を提案する。

    * 「STAR」をエンジンに搭載する。

    * 評価条件のような飛び道具はエンジンに搭載せずユーザに実現させる。

    私の12月2日付の返信は以下のようになります。

    * 「評価条件」の元は「評価メンバ」であり、内容は完全に同じである。

    * 提案者は機能を思いついた時点では「STAR」を知らなかった。「STAR」のチュートリアル「冒険者の喧嘩のさせ方」を所持しているが、ファイルは1.50リリースより後の日付であり、思いついたのは1.50リリース前である。

    * 複雑な事を簡単にできるようにする事には、ユーザをその先の問題に集中できるようにする意義がある。

    * 「STAR」はエンジンに搭載するには複雑すぎる上、この提案は他の主張と矛盾している。

    * 「評価条件」は複雑だが、すでに「評価メンバ」が存在する事で正当化できる。

    12月30日の私のメッセージ・1月6日の七篠さんの返信・1月6日の私の返信・1月8日と1月30日の私のメッセージ・1月31日の七篠さんの返信は、リリースと議論の公開の話なので省略。

    七篠権兵衛さんの1月31日の意見は以下のようになります(前の意見と重複する部分は省略)。

    * CWNextの機能をさらに拡張するというやり方に違和感がある。複雑すぎると言っているものをなぜ拡張するのか。

    * そうであればSTARを搭載するという選択肢もよいのではないか。

    * STAR搭載がなしなら、機能の拡張もなしではないか。

    * ユーザが道具を作る時に使える部材のような機能をもっと充実させてほしい。

    私の1月31日の返信は以下のようになります。

    * 「評価条件」は、「評価メンバ」を部材として使えるようにするための案である。

    * 「評価メンバ」の条件部分の構造には一切手を加えておらず、評価の仕組み自体を拡張したわけではない。

    七篠権兵衛さんの2月11日の返信は以下のようになります。

    * 「評価条件」は単一コンテントの機能として複雑すぎる。

    * STARのパッケージコールをそのまま置換できるという点で、これは部材ではなく融通のきかない道具であり、応用を見出すのは困難である。

    * 応用が効かないのであれば、やりたい事が「評価条件」の範囲から外れたユーザは、やりたい事を諦めるか、「評価条件」の使用を諦めて既存コンテントでイベントツリーを作るしかないのではないか。

    * 機能を分割して粒度を下げる事はできないか。

    私は2月13日に返信し、機能の分割は自分も目指す所である事を伝えました。ただしその詳細については触れていませんし、反論すべきところに反論もしていません。

    この時点で、私は一旦議論を棚上げにし、公開の場に移す事の提案に集中しています。その後、3月11日の私のメッセージ、3月20日の七篠さんの返信を経て、現在に至っています。

  20. k4nagatsuki
    wrote

    k4nagatsuki さんがあなたに Bitbucket でダイレクトメッセージを送信しました:

    https://bitbucket.org/k4nagatsuki/cardwirthpy-reboot/issues/354/cwxeditor#comment-26443344

    上記のIssueでタイミング悪く(むしろ良く?)メンバ選択分岐に評価条件をつけられないかという問い合わせが来ました。その提案と実装はすでに行われたが次のβバージョンで保留にするかもしれないという事を伝えないわけにはいかなかったのでそのまま伝えましたが、まだ議論の公開が行えていないので、保留にする理由を伝える事ができていません。

    できれば早めに要約の確認をしていただけないでしょうか。以前にもお伝えしましたが、多少急いで間違いをしても、後から訂正する事は可能です。

  21. 権兵衛 七篠
    wrote

    権兵衛 七篠 sent you a message on Bitbucket:

    ......よそからも似た意見が出てきて、「これは駄目かもわからんね」といった感ががが。

    もはやここまでかもしれません。

    平たく、明け透けに申し上げまして、やはり

    「先方に納得いただけるような説明や理由はこれ以上思いつきませんので、

    私は「No」というのを諦めます」という結論で

    もうおしまいにしたいとも思っています。

    要約の内容を見て、伝えたいことを正確に伝える/受け取ることが、

    やはり自分には「そもそも不可能」なのではないかと思わずにいられません。

    0.12.4リリースというスケジュール上のプレッシャーがあったにせよ、

    かくも時間と言葉を費やしてなお、相手の反論しか引き出せない状況を前にして

    果たしてこのまま続けたところで合意形成が成り立つのだろうか、

    私は、自分が挑むにはあまりに難しすぎる課題に挑戦してしまったと感じています。

    自らの立場を、相手に納得してもらえる説明ができそうにない、

    また自分の考えとの折り合いをつけて相手の立場を理解できそうにないという問題もありますが、

    双方の考え方に優劣や是非をつけることにも、いまの自分は違和感を持っているのです。

    結局、最終的な実装には「するかしないか」の二択しかない以上、

    どうがんばっても、この先どこかでどちらかの考えを何かしら否定することになる。

    当事者が「議論で相手を言い負かすこと」に意味を持つ持たないにかかわらず

    結果でものを見るだろう外部の人間は「論破した、された」で判断したがるものです。

    これから公開の場に移して、外部の人間巻き込んで白黒つける、またはそのように受け取られる展開を

    引き起こしかねないならば(おそらく自分の性格や能力的にそうなるであろう事が容易に想定できます)

    最悪これはNEXTの一件のような多くの怨恨を生むことでしょう。

    畢竟、自分じしんが性格や能力が合意形成の障害となっている以上

    私は自分の訴えを取り下げるべきだと感じています。

    わたしは、いちCWユーザーとして、先方へものごとを伝える試みを、放棄したく存じます。

    4ヶ月もの時間を費やして多大なご迷惑をかけたあげく

    「この話なかったことにしてください」という結論になることは

    ほんとうに申し訳なくおもっています。

    このような成果の何もない結果に終わることはひとえに己の不徳のいたすところです。

    己の不徳のいたすところゆえの結果なので、しょうじき「全部なかったことに」したいのが本音ですが、

    スケジュール遅延についてわれわれは説明義務があるでしょうから、

    この4ヶ月のやり取りの全文公開に関して、消極的な理由ですが可としたく存じます。

    なお、「載せるべき機能は他にある」という訴えを「なかったことにする」方針でありますから、

    評価条件機能を含むリリースについての見解は、「異議なし(積極的な賛成)」へと変更します。

    末筆ですが、この4ヶ月、

    最大限の配慮と誠意をもって私めと向き合い続けてくださったこと、

    あらためて感謝したく存じます。

    おそらく今後とも私はPyを支持し、これを利用することになるでしょう。

    その上で、もし容認しきれぬ不満や疑問があるのであれば、

    相互の、あるいは周囲の時間やスケジュールや労力、心情を浪費消耗させることなく、

    黙って宿を互換するエンジンのフォークを行うのが、

    他者にものを伝える能力の限定的な自分にとっての最良の選択であると、

    このやり取りを材料に、私は結論するところです。

  22. 権兵衛 七篠
    wrote

    権兵衛 七篠 sent you a message on Bitbucket:

    段落の空行あけに失敗してますので再投稿します:

     

     

    ......よそからも似た意見が出てきて、「これは駄目かもわからんね」といった感ががが。

    もはやここまでかもしれません。

     

    平たく、明け透けに申し上げまして、やはり

    「先方に納得いただけるような説明や理由はこれ以上思いつきませんので、

    私は「No」というのを諦めます」という結論で

    もうおしまいにしたいとも思っています。

     

     

    要約の内容を見て、伝えたいことを正確に伝える/受け取ることが、

    やはり自分には「そもそも不可能」なのではないかと思わずにいられません。

    0.12.4リリースというスケジュール上のプレッシャーがあったにせよ、

    かくも時間と言葉を費やしてなお、相手の反論しか引き出せない状況を前にして

    果たしてこのまま続けたところで合意形成が成り立つのだろうか、

    私は、自分が挑むにはあまりに難しすぎる課題に挑戦してしまったと感じています。

     

    自らの立場を、相手に納得してもらえる説明ができそうにない、

    また自分の考えとの折り合いをつけて相手の立場を理解できそうにないという問題もありますが、

    双方の考え方に優劣や是非をつけることにも、いまの自分は違和感を持っているのです。

    結局、最終的な実装には「するかしないか」の二択しかない以上、

    どうがんばっても、この先どこかでどちらかの考えを何かしら否定することになる。

    当事者が「議論で相手を言い負かすこと」に意味を持つ持たないにかかわらず

    結果でものを見るだろう外部の人間は「論破した、された」で判断したがるものです。

    これから公開の場に移して、外部の人間巻き込んで白黒つける、またはそのように受け取られる展開を

    引き起こしかねないならば(おそらく自分の性格や能力的にそうなるであろう事が容易に想定できます)

    最悪これはNEXTの一件のような多くの怨恨を生むことでしょう。

     

     

    畢竟、自分じしんが性格や能力が合意形成の障害となっている以上

    私は自分の訴えを取り下げるべきだと感じています。

    わたしは、いちCWユーザーとして、先方へものごとを伝える試みを、放棄したく存じます。

    4ヶ月もの時間を費やして多大なご迷惑をかけたあげく

    「この話なかったことにしてください」という結論になることは

    ほんとうに申し訳なくおもっています。

    このような成果の何もない結果に終わることはひとえに己の不徳のいたすところです。

     

    己の不徳のいたすところゆえの結果なので、しょうじき「全部なかったことに」したいのが本音ですが、

    スケジュール遅延についてわれわれは説明義務があるでしょうから、

    この4ヶ月のやり取りの全文公開に関して、消極的な理由ですが可としたく存じます。

     

    なお、「載せるべき機能は他にある」という訴えを「なかったことにする」方針でありますから、

    評価条件機能を含むリリースについての見解は、「異議なし(積極的な賛成)」へと変更します。

     

    末筆ですが、この4ヶ月、

    最大限の配慮と誠意をもって私めと向き合い続けてくださったこと、

    あらためて感謝したく存じます。

    おそらく今後とも私はPyを支持し、これを利用することになるでしょう。

    その上で、もし容認しきれぬ不満や疑問があるのであれば、

    相互の、あるいは周囲の時間やスケジュールや労力、心情を浪費消耗させることなく、

    黙って宿を互換するエンジンのフォークを行うのが、

    他者にものを伝える能力の限定的な自分にとっての最良の選択であると、

    このやり取りを材料に、私は結論するところです。

  23. 権兵衛 七篠
    wrote

    権兵衛 七篠 sent you a message on Bitbucket:

    訂正:29行目(「畢竟、自分じしんが性格や能力が合意形成の障害となっている以上」)差し替え

    畢竟自分自身が、自分じしんの性格や能力が、合意形成の障害となっている以上

  24. 権兵衛 七篠
    wrote

    権兵衛 七篠 sent you a message on Bitbucket:

    訂正:38行目(「スケジュール遅延についてわれわれは説明義務があるでしょうから、」)差し替え

    スケジュール遅延について説明義務があるでしょうから、

  25. 権兵衛 七篠
    wrote

    権兵衛 七篠 sent you a message on Bitbucket:

    訂正:42行目(「評価条件機能を含むリリースについての見解は、「異議なし(積極的な賛成)」へと変更します。」)差し替え

    本件投稿を以って評価条件機能を含むリリースについての見解は、「異議なし(積極的な賛成)」へと変更します。

  26. k4nagatsuki
    wrote

    k4nagatsuki さんがあなたに Bitbucket でダイレクトメッセージを送信しました:

    分かりました。残念ですが、仕方ありません。七篠さんはこの件から手を引かれるという事で、了解しました。

    ご理解いただけている通り、私としてはこの件を無かった事にはできません。一切を正直にするのが予断を与えない最善の方法なので、要約を作るなどあれこれせず、そのまま全文を公開しようと考えていますが、本当によろしいでしょうか。

    およそ一週間後、来週の土曜日以降に実行したいと考えていますので、気が変わった場合はそれまでにお伝えください。

  27. 権兵衛 七篠
    wrote

    権兵衛 七篠 sent you a message on Bitbucket:

    全文公開については、「消極的な理由ですが可」という結論で行こうと思います。 

    残念ですが、わたくし個人は、ここまでのやり取りを通じて、 

    わたくしめと先方との、合意形成の可能性はゼロに近いだろうなと判断しています。 

     

    むろん本音言えば要約を作るほうが望ましいのですが、リリーススケジュール押してる現状で 

    (いえ、取り下げた以上スケジュールはもはや関係ないかもしれませんが) 

    先方と「合意できる」ような要約を形成できる可能性も「ゼロに近い」と判断でき、 

    ならば全部オフレコという選択肢をとりたいですが、 

    またここで成功可能性皆無な合意形成に時間や手間を割くくらいならば 

    結論として全文公開するのは、残念だけど当然だろうという認識です。 

     

     

    今にして思えば、「引き際を誤った」といいますか。 

    「STARを参考にしていない」という回答を得た時点で 

    一旦やり取りをクローズさせるべきだったかと思案するところです。 

     

    その辺の判断のまずさのせいで 

    結果として時間と労力を消耗させ、「残念です」という感想をもたれる形にしてしまったのは 

    本当に申し訳ないといいますか、改めてお詫び申し上げたく存じます。 

    合意形成の可能性がないという結論を得ることにはなりましたが 

    やり取りそのものを却下したり嘲笑することもなく 

    辛抱強く付き合ってくださったことは感謝しても仕切れないなと思っています。 

     

     

    ※以下はあくまで個人的な感想なので、読み飛ばしていただいて結構です。 

    (以下の記述に対するご返答にコメントする気力も大してないので......orz) 

     

    Issue #54バグやマイナーな仕様を利用したシナリオへの対応 

    https://bitbucket.org/k4nagatsuki/cardwirthpy-reboot/issues/54 

    こちらのやり取りも拝見していて思ったのですが、 

     

    おそらく先方にはおかれましては、何か確固たるポリシーというか、 

    矜持というのか意地というのか、何か思想や信念の様な物を多分お持ちなのだろうなとは思うのです。 

     

    そうしたものを堅持し頑として曲げずにやってきたからこそ 

    いまCWPyがここまで形になったのだとも思いますし、 

    その姿勢を否定するといった話は依怙地な自分には口さけてもいえないんですが、 

     

    ただその「堅持するもの」にもとる(か、もとるように見える)提案や意見に対しては 

    なんとなく、Issue #54のときも今回も、「原則全て退ける」とか「まったく賛同できない」という調子で 

    相手に倍する理屈を積み上げてでも、兎に角それを全力で阻止却下しようとしているといいますか、 

    お互いの納得も合意形成も知ったことではないという様な姿勢で臨まれているようにも、個人的には感じました。 

     

    先方にとっての「地雷」を踏み抜いた「お察しできない」自分が悪いのかもしれませんが、 

    兎に角相手が「手を引く」まで持論をレクチャーし続ける、という印象を持ちましたし、 

    「あなたの考えがどうだろうと私はこう思いますっ!」と 

    反論(という名の持論)で提案も意見も塗りつぶしてくるを相手との根競べには 

    付き合いきれないな、というのが、自分の偽らざる感想です。 

     

    で、もうあきらめたからこそ云いたい放題できるといいますか。 

    かみ合うものにするにはどうしたらよかったのか、とつらつら考えますと、 

    (「とにかくこーしてくださいっ!」って姿勢で話吹っかけてきた自分が言っちゃアレなんですが) 

    「相手がその意見や提案をするに至った過程」を把握することが大事だったのかなぁと思案するところです。 

    相手の提案や意見に対する支持や不支持は脇においておくといいますか。 

     

    自分の語彙で理解や納得してもらえる説明ができてるのかわからないですが、 

    相手の提案や意見に対し支持する支持しないを返事にするんじゃなくて 

    相手の提案や意見をまず自分の表現に翻訳して、次にその提案や意見が生じた背景を深く掘り下げて 

    その提案や意見にいたった発想や判断を把握し、しかる後に自分の発想や判断と比較する、という

    工程をふんでから、最終的な返答の推敲を始めるような調子です。 

    「合意できていない点の整理」とおっしゃっていたことと同じかどうかはわかりませんが、 

    提案や意見という表層の部分をかきわけて、その根幹にある発想や判断を把握したほうが 

    きっと建設的な結論が出せたんじゃないかなと今にして思うところです。 

     

    (とりあえずここまででいったん切上げ。斜め読みや読み飛ばされる可能性もある記述につき 

    あまり優先度は高くないといいますか、残りを脱稿しない可能性もあります)

  28. 権兵衛 七篠
    wrote

    権兵衛 七篠 sent you a message on Bitbucket:

    訂正:47行目(「反論(という名の持論)で提案も意見も塗りつぶしてくるを相手との根競べには」)差し替え

    反論(という名の持論)で提案も意見も塗りつぶしてくる相手との根競べには

  29. k4nagatsuki
    wrote

    k4nagatsuki さんがあなたに Bitbucket でダイレクトメッセージを送信しました:

    追加のご意見をいただいたので公開を中止しようかと思いましたが、依然として全文公開は可との事ですので、先週お伝えした通り今日中に公開させていただきます。待ったをかけるのはまだ間に合いますので、気が変わったらお伝えください(その場合は七篠さんの名前を伏せた要約を作って状況を説明する事にします)。

    今回の内容について(前回・前々回もですが)意見する事は今はせず、全文公開の後で、公開の場で行おうと考えています。