PathLink: 砂塵の彼方 > 徒然日記 > 2015年02月のエントリ

エントリー

2015年02月の記事は以下のとおりです。

[CardWirth] CW用「エンジン識別サンプル」 1.04 不具合修正

前バージョンまで、Pyが互換モードで動作中は、正しく識別ができませんでした。

  • CW1.28を時限称号への対応で見分ける場合、確認した全てのバージョンがPy0.12.2 (Reboot)と識別されていた。
  • CW1.28を状態異常判定バグの有無で見分ける場合、確認した全てのバージョンがCW1.20と識別されていた。

これは何故かというと、「互換モード=互換指定したバージョンと全てにおいて同じ動きをする」のではないからです。前回更新時は、その詳細について詳しくは調べていませんでした。

今回、サンプル内で識別に用いている仕様の差やバグについて、1つずつ互換モードでの動きを確認しました。
以下は、その結果です。

【互換モード時、指定したエンジンの動きが再現されたもの】

  • CW1.20の状態判定分岐バグ(中毒が麻痺/石化の判定に引っかかる類のあれ)


【互換モードでも通常モード時と同じ動きだったもの】

  • 時限称号の時間経過による消滅
  • 仮想システムクーポン「@MP3」の検出
  • CW1.30以降の状態判定分岐の拡張分(少なくとも混乱と沈黙は互換設定によらず検出可能)
  • CW1.20の、睡眠者に絶対成功(成功値修正+5)で攻撃した場合、対象が目覚めないバグが修正済み


【そもそもCW1.50とは挙動が異なっているもの】

  • 対象消去した同行NPCをランダム選択で選択できない(※CW1.50に合わせて、できるように修正されるようです)
  • フィールド全体対象のクーポン分岐で同行NPCの称号を検出可能


互換モードで何が変わるのか細かく調べれば、どのエンジンに互換の設定で動いているのか判別可能かもしれませんが、今のところやるかどうか未定です。
互換モードの使い道を考えてみると、

プレイヤーが最新エンジンでは不具合が出るシナリオを遊ぶ際に利用
→シナリオに何かしなくても、適切に互換設定すれば多分動く。

シナリオ作者が過去の仕様やバグを利用したシナリオを作る際に利用
→こちらも互換設定が適切なら恐らく問題なく、Pyであることが判別できれば十分。
→正規版やNextに対しては、対応していない時メッセージを表示するなどの対応が可能。

なので、互換の設定まで見分けなくて良いようにも思います。


[現時点で識別可能なエンジン]
正規版
・CW1.20/1.28/1.29/1.30/1.50
私家版
・CardWirthNext1.60
・CardWirthPy(Reboot)0.12.1/0.12.2


エンジン識別サンプル→ver.1.04
・CardWirthPyが互換モードで動作中も正しく識別できるよう修正
DLはこちら

※※※
修正過程で新たに分かった事を、メモ箱の関連記事に反映させました。

[CardWirth] CW用「エンジン識別サンプル」 1.03 Py(Reboot)のバージョン識別に対応

前回更新時(一昨日)の日記の最後に書いたことを、シナリオに反映させました。


(1)CardWirthPyのバージョン0.12.1 (Reboot)がダウンロード可能なのを発見
→Pyのバージョン識別を追加しました。

サンプルのバージョン1.02はエンジンバージョンの違いを考慮していませんでしたが、これを0.12.1 (Reboot)は「Py0.12.1 (Reboot)」、0.12.2β1 (Reboot)と0.12.2 RC3 (Reboot)は「Py0.12.2 (Reboot)」と判定されるようにしました。

※Nextは現在1.60のみなのでバージョン識別はなしですが、今後新しいバージョンが出たら対応予定です。


(2)CardWirthPyのが互換モードで動作中、識別結果がどうなるかを調べ、使い方説明書に追加しました。

互換モードであろうとPyと判定された方が良いのか、互換指定されたエンジンと判定された方が良いのかで迷い、今回は情報の追加だけです。


[現時点で識別可能なエンジン]
正規版
・CW1.20/1.28/1.29/1.30/1.50
私家版
・CardWirthNext1.60
・CardWirthPy(Reboot)0.12.1/0.12.2


エンジン識別サンプル→ver.1.03
・CardWirthPyのバージョン見分けに対応
DLはこちら

※※※
サンプルシナリオ更新の過程で調べた事は、メモ箱の関連記事に反映させました。

[CardWirth] CW用「エンジン識別サンプル」 1.02 微調整

きっかけは、Pyの細かい更新内容を見ようと付属のChangeLog.txtを開いたことでした。ファイル先頭に、「2014/11/01 ver.0.12.2β1 (Reboot)」の一行が。
実は、それまでReadMe.txtを見て、バージョンは0.12.1だと思っていました。当サンプルの前バージョンまで付属テキストにPyの対応バージョンは「0.12.1」だと書いていたのは、「0.12.2」が正しかったわけです。

さらに、念のため配布元を確認したところ、今月初めに更新されていたことが分かりました。
現在最も新しいのは、ver.0.12.2 RC3 (Reboot)のようです。こちらもサンプルで識別を行ってみて、「Py」と判定されることを確認しました。

【Pyについて】
0.12.2 RC3も0.12.2β1と同じに識別できるか確認し、確認できたので、識別結果を保存するステップの値を「Py 0.12.1」としていたものを「Py」と変更しました。

【Nextについて】
Nextの方も、ランダム選択の修正が何時行われたのか、付属テキストの更新履歴を見てみましたが、そこまで詳しくは書いてありませんでした。他にそれらしい項目が無いので、Ver.1.6.0.8の「その他細かいもの多数」の中に含まれているのかもしれません。
もしランダム選択の修正が1.6.0.1より後なら、Nextの初期版は正しく識別できない事になります。


開発段階の版の違いまで考えると、大変な事になりそうです。
それぞれ正式版(正式版が出ていない時は開発段階の最も新しいバージョン)を識別できれば良しということにしておきますか、、、。

[現時点で識別可能なエンジン]
正規版
・CW1.20/1.28/1.29/1.30/1.50
私家版
・CardWirthNext(v.1.6.0.14)
・CardWirthPy(v.0.12.2)


エンジン識別サンプル→ver.1.02
・CardWirthPyの新バージョンに対応して調整
DLはこちら

※※※
そして、更新が終わってから0.12.1がまだダウンロードできることと、互換モードなる機能の存在に気付く──……。このサンプル、まだまだやる事が残っているようで。

[CardWirth] CW用「エンジン識別サンプル」 1.01 Py識別にも対応

1つ前のバージョンでは、対象消去後のNPCをランダム選択で選択できるかどうかでNextを見分けていましたが、このやり方ではPyはNextであると判定されていました。対象消去されたNPCは選択できない方が正しいので、これはやむをえません。
また、Pyを見分けるにはNextと同じ部分を見ても仕方ないわけで、別のCW1.50ともNextとも違う部分を探す必要があります。しかし、一昨日の段階ではさっぱり見つからず、これは長くかかりそうだと思っていたら。

何と翌日、意外に大きな違い発見しました。

「フィールド全体を対象としたクーポン分岐で、同行NPCの所持称号を検出できるか否か」

ただ、これを利用した見分け方は、そう長くは使えないかもしれません。
CW1.50やNextとは明らかに挙動が異なるため意図的な仕様と思われますが、今後CW1.50に合わせる変更が行われればそれまでです。
いまいち決め手に欠けるシナリオ更新でしたが、今日はここまで。

このサンプルは、「現在入手できる全てのエンジンを見分けること」を目標にしています。
してみると、今後は、どこかで新しいエンジン、新しいバージョンが出る毎に、それを見分けるという話になっていくでしょう。何だかキリがないような気もしてきました。
今後エンジンは増えることはあっても減ることはないだろうし、CW1.29の「@MP3」のように、各々のエンジンにそれぞれプログラム名とバージョンを表す仮想システムクーポンがあれば……と、まぁしょうもない妄想語っても意味ないですな。
いずれシナリオ側で他と区別できないエンジンが出てきたとしても、(と言うか今でも、)必要な時にはシナリオ作者がreadmeなどに対応エンジンを書けば済む話ではあります。

[現時点で識別可能なエンジン]
正規版
・CW1.20/1.28/1.29/1.30/1.50
私家版
・CardWirthNext(v.1.6.0.14)
・CardWirthPy(v.0.12.1)


エンジン識別サンプル→ver.1.01
・CardWirthPyの見分けを追加
DLはこちら

※※※
ちなみに、なぜCW1.50では対象消去後のNPCをランダム選択で選択出来てしまうかというと、同行NPCの対象消去が正常に機能していないからです。

ランダム選択でパーティーに同行中のNPCを選択
 ↓
選択メンバを対象として効果コンテントで対象消去

という処理を実行した場合、本来なら選択状態のNPCは消滅してキャンプの表示から消え、キャスト存在分岐で検出できず、当然ながらランダム選択でも選択できないのが正しい挙動です。
ところがCW1.50では、対象消去したはずのNPCがキャンプで閲覧でき、キャスト存在分岐・ランダム選択の双方で検出可能にも拘わらず、戦闘では動かないという謎の挙動をします。

なお、NextやPyの対象消去後のNPCは、現時点では次のような動き方です。

●CWNext(v.1.6.0.14)
対象消去後ランダム選択で選択できる現象はないが、キャンプで閲覧でき、キャスト存在分岐でも検出される。戦闘では動かない。

●CWPy(v.0.12.1)
対象消去後はキャンプでの表示が消え、キャスト存在分岐・ランダム選択の双方で検出されない。

CW1.50、Next、Pyでそれぞれ違っていて、ここに引っかかると割と危険です。
同行NPCを消したいなら、キャスト離脱コンテントで離脱させるのが無難だと思います。それならどのエンジンを使っていても同じ動きです。

[CardWirth] CW用「エンジン識別サンプル」 1.00 Next識別に対応

少し前になりますが、Twitterで知り合った方から、既存シナリオの一部にCW1.50では遊べるがNextでは遊べないものが存在しているという話を聞きました。Next独自のシナリオフォーマット(=Next用シナリオがその他エンジンで遊べない)に目を奪われ過ぎて、逆パターン(=既存シナリオがNextで遊べない)は盲点になっていたので、ちょっとした驚きでした。

が、考えてみれば複数あるエンジンがどれも全く同じであるわけはなく、そういう事が起きても不思議ではありません。これまでも非対応エンジンが使われている場合にメッセージを出すシナリオはありましたが、これをNextやPyに対してもできるようにしておけば何かの時に役立つかもしれません。

そのためには、まず、公式ファンサイト以外で配布されているエンジンを、それぞれ見分ける事が必要になります。
そんなところから出発したサンプルシナリオです。

今回は、CardWirthNextの見分けのみ作りました。
今後さらに、CardWirthPyの見分けにチャレンジします。

エンジン識別サンプル:ver.1.00【新規】
DLはこちら

※※※
サンプルに使用したCardWirthNextの見分け方情報を、メモ箱の「CW各バージョン変更点まとめ」に追加しました。(→こちら

[CardWirth] 遊記:「MACHINE」HAND様

唐突にダンジョンものがやりたくなった結果。
Twitterで@cw_now宛てに送った経過メモの原稿です。
シナリオの展開とそれに対する判断内容及び感想がメインのため、激しくネタバレしています。
(Twilog:2/12辺り)

【作品情報】
シナリオ名:MACHINE
シナリオバージョン:1.22
対象レベル:7~10
前提条件:なし
入手場所:Adventurer's GUILD / Vector
作者サイト:HANDのページ

【3行で紹介】
遺跡調査の障害となる人型機械兵器の破壊を依頼された冒険者たち。
機械兵器と様々な仕掛けに守られた遺跡内を抜け、貼紙に描かれていたあの一体を探す──。
遺跡の仕組みを解き明かし、依頼を果たせ!

  • 【01】『MACHINE』HAND様(v.1.22)/対象Lv:7~10, パーティー:6人(Lv平均7.3)
  • 【02】対象レベル7~10のシナリオをどうしてもやりたくて、初代宿を引っ張り出す。Lv8が2人+Lv7が4人のパーティーが居るから、こいつらに頼ろう。
  • 【03】貼り紙&添付テキスト拝見。貼紙:『魔法の鎧』などを用意しておいてください。 ……という事は、ダメージがきついのかな。ああ、テキストにも「戦闘がキツめ」とあるか。ダメージ軽減と回復を重視で……
  • 【04】待て、最近この宿触ってないから何があるのか忘れてるな。「魔法の鎧」は何枚あったっけ。えぇと、2枚か、2枚とも持って行こう。回復手段は「癒身の法」2枚と、荷物袋内の回復アイテム(在庫25枚中ほとんどが回復(笑))でいいか。
  • 【05】さて開始……と思ったら、貼紙とreadmeで対象レベルが違った。貼紙7~10、readme8~10。readme「7以下でもクリア可能」か、いけるかな。この宿は全滅=死亡縛りじゃないし、いざという時はロードがあるさ。(0:00)
  • 【06】誰も引き受けなかった依頼か。相手が「機械兵器」という時点で、既に危険な香りが漂っているもんな。しかも人を襲うヤツ。敬遠されて当然だ。(0:01)
  • 【07】親父さんに詳細確認。ほぼ何も分からんのかー。行ってみるしかなさそうだけど、向こうで断れるのかどうか。とりあえず出発。……うん? 何だろう今のは……(0:02)
  • 【08】依頼人氏登場。なるほど、試験型。周囲の敵を自動排除な。って、やっぱりそうなりますかー。本人や他の研究者については起動前に情報入れたのかねぇ。。(0:04)
  • 【09】で、復元されたものでも性能を見ておきたくて暴露状態にしてみたが、通常攻撃がほとんど通っていない様子。こんな事で遺跡内が歩けるのか。先が思いやられる。(0:05)
  • 【10】ひょっとして逃走……できるわけないかー。(その後しばらく粘ったものの全滅)…………ああ、これは。負けたからって追い返されるわけじゃないんだな。ひとまず助かった。(0:12)
  • 【11】依頼人から詳細を聞く。さっきの試作型は、ボスと同等の強さなのか。勝てるかな。微妙だ。しかし、引き受けないと先に進まない。(0:14)
  • 【12】お、回復手段を貸してくれるんだ。それなら「癒身の法」を持っていない4人に持たせとこう。準備完了。(依頼人氏、「やれやれ」が口癖なんだろうか。)(0:14)
  • 【13】試験型どうする? 遺跡内の機械兵器は、彼にとって敵なのか味方なのか。味方と設定されていなければ敵だろうけど、同士討ちしないための防御機構とか(悩みつつ連れていく事に決定)(0:15)
  • 【14】遺跡内。ここからはマップ書きながらだな。(0:16)
  • 【15】見るからに電子キーか生体認証の類で管理されてそうな扉が。……うん、当然開かないよな。カードキーが必要らしい。(0:17)
  • 【16】行き止まりか、戻ろう。お、何か拾った。パスコードか、なるほどなるほど。(0:19)
  • 【17】と思ったら機械兵器と遭遇。やはり逃げられんよな。攻撃が当たらないというほどではないし、まぁ倒せる範囲だが、攻撃食らうと痛い。(0:20)
  • 【18】廊下を先へ。……おお、いい物拾った。これがさっきの扉のあれか。一旦戻ろう。(0:23)
  • 【19】へぇ。カードキーには有効残回数がある、と。これは必要になってから開けた方がよさそうだなぁ。ひとまず他の行けるところを回って来ようか。(0:25)
  • 【20】あー、納得。1つのキーが複数の扉に対応しているわけか。もしかすると、下手に使うと詰んだりするのかな。慎重にやろう。(0:26)
  • 【21】2階への階段発見。にしても、攻撃が痛い。回復手段を借りておいて良かった。(0:32)
  • 【22】この遺跡、そこそこ広そうだ。カードキーの使用に慎重になるのも良いが、歩き回って無暗に敵とぶつかるのも……そもそも機械兵器との遭遇はランダムなのか、倒したらもう出ない式なのか。(0:33)
  • 【23】ああ、もう行けるところはないな。戻ってキーを使うほかない。(0:33)
  • 【24】何かのスイッチが出てきたんだが、これは。押して……何も変わらないか。とりあえず戻、、ああ、そういう事か!(0:38)
  • 【25】おっと。さっき通ったところで敵と遭遇。少なくとも一度通ったから安全というわけではないんだな。(0:38)
  • 【26】マップ書くのに集中していたら、あっという間に時間が経過。しばらく歩き回ったお陰で、仕掛けは多分把握できた。カードキーを使い過ぎてない事を祈ろう。ボス部屋を探すか。(0:53)
  • 【27】にしても、これは本当に魔法の鎧が無かったら死ぬ;(1:00)
  • 【28】おっと。ボス手前の重要そうな二重ロックにキーが足りない。失敗したな。しかし過ぎた事は仕方ない、人間諦めが肝心。(1:19)
  • 【29】この先ボスか。色々開けてない扉は危険を排除してからでいいかな。とりあえず戦うべし。(1:20)
  • 【30】混乱が痛い。。。(1:24)
  • 【31】やっとボスが重症になってきた。もうちょい頑張れ。(1:29)
  • 【32】おう、倒れた。3人意識不明か。いや、危なかった。(1:32)
  • 【33】開けてない扉を開けつつ帰ろう。……と思ったら扉が反応しない。ボス倒す前じゃないと駄目だったか。機械兵器による防御が突破されると一旦完全閉鎖する二重の防衛機構とか? 依頼人氏がこれから大変かもな。(1:33)
  • 【34】終了ー。最初のあれは依頼人氏だったと思うが、結局何だったか分からんかったな。まあ、この連中なら「報酬さえ頂ければ」か(笑)。(1:35)
  • 【35】それにしても。個人的には、ブレッカーより試験型の方が強かった気がする。(1:36)
  • 【36】かかった時間:約1時間35分/獲得称号:合計+1点分/獲得したもの:969sp、アイテム200sp分

【終了後】
内容の濃いダンジョンものがやりたくて、以前に知人から勧めてもらったこのシナリオを選びました。
更新履歴で最新バージョン(v.1.30)では雑魚敵が大幅に弱体化されたと知り、敢えて1つ前のバージョンに挑戦。パーティーの平均レベルが対象レベルの下限に近かったこともあり、かなりギリギリ感を楽しめました。

それにしても、依頼人氏の研究の目的が気になるところです。
あの手のものの使い道は、もう一択ぐらいに限られてますかねー……。

【メモ】
・ゲームであるという前提で考えると、入手できるキーと情報で全ての扉を開けられるはず。良く考えて行動しないと謎が残る。
・ただし運要素もあるので諦めが肝心。

[freo] 閲覧制限の扱いをフィルタリングとその他で分ける

「本体設定」の「閲覧制限」の項目で「制限された記事の表示」を「一覧に表示しない」に設定すると、デフォルトではユーザー登録及びグループによる制限がかかっている記事のほか、フィルタリングされた記事も存在が隠蔽されるようになります。
これを、フィルタリングされた記事とその他の制限で、扱いを別々に設定できるようにする方法です。

なお、プログラム本体を書き換えますので、取り扱いには十分気をつけて下さい。
少しでも疑問や不安を感じる時は、この改造は行わない事をお勧めします。

(1)準備

必ず、本体の設置とプラグインの追加が全て終わってから実行してください。

(2)設定ファイルの編集

configs/view.ini の11行目辺り、

;restricted_display bool   "一覧に表示する|一覧に表示しない"

の直後に、

;filtered_display   bool   "一覧に表示する|一覧に表示しない"

を追加します。
次に、 configs/view.ini の最後の行、

;exit

の直前に

;フィルタリングされた記事の表示
filtered_display = Off

を追加します。
これで、フィルタリングされた記事用の設定項目ができました。

(3)プログラム本体の編集

全てのphpファイルを対象に、キーワード「$freo->config['view']['restricted_display']」で文字列検索を行います。
発見箇所の全てが制限された記事の表示に関わる部分で、変更の対象となります。
後日プラグインを追加するなどして新たに閲覧制限を扱う箇所が増えた時には、その都度、該当する部分に下記変更を行って下さい。

※※※
見つかった部分をエディタで開いてみると、以下のような感じになっているはずです。
(※エントリを扱っている例です。ページを扱う場合は変数名が $entry_~ ではなく $page_~ になります。)

//制限されたエントリーを一覧に表示しない
if (!$freo->config['view']['restricted_display'] and ($freo->user['authority'] != 'root' and $freo->user['authority'] != 'author')) {
    $entry_filters = ~
    (フィルターが設定されている記事の扱い)

    $entry_securities = ~
    (ユーザー登録やグループで制限されている記事の扱い)
}

上記の1~2行目をユーザー登録やグループで制限されている記事を扱う部分の前にコピー&ペーストし、上側の if ~の最後を } で閉じます。

//制限されたエントリーを一覧に表示しない
if (!$freo->config['view']['restricted_display'] and ($freo->user['authority'] != 'root' and $freo->user['authority'] != 'author')) {
    $entry_filters = ~
    (フィルターが設定されている記事の扱い)
}

//制限されたエントリーを一覧に表示しない
if (!$freo->config['view']['restricted_display'] and ($freo->user['authority'] != 'root' and $freo->user['authority'] != 'author')) {
    $entry_securities = ~
    (ユーザー登録やグループで制限されている記事の扱い)
}

これで、元々1つだった条件文が2つになりました。
次に、上の if 行中の「restricted_display」を「filtered_display」に書き換えます。
コメントの解説も、分かり易く変えておいても良いかもしれません。

//フィルタリングされたエントリーを一覧に表示しない
if (!$freo->config['view']['filtered_display'] and ($freo->user['authority'] != 'root' and $freo->user['authority'] != 'author')) {
    $entry_filters = ~
    (フィルターが設定されている記事の扱い)
}

//制限されたエントリーを一覧に表示しない
if (!$freo->config['view']['restricted_display'] and ($freo->user['authority'] != 'root' and $freo->user['authority'] != 'author')) {
    $entry_securities = ~
        (ユーザー登録やグループで制限されている記事の扱い)
}

この変更を、検索で発見した全ての箇所に施します。

(4)設定の変更と反映

設定の変更は、本体設定>閲覧制限 で行います。
設定を変えた後、適当なエントリとページを各1つずつ更新すると、タグの集計など一部設定変更だけでは情報が更新されない部分にも設定内容が反映されます。

[砂塵の彼方] 不定期日記ページ整理に伴うリンク切れ発生について

管理上の都合により、「砂塵の彼方」内のページ(index.php/page/*)を整理しました。
移動や名称変更でアクセス用URLが変わったページが多数あります。

お手数ですが、ページへのリンクは、リンク先の変更をお願いします。
また、自サイト内からのリンクは修正済みですが、万一リンクが切れているところがあればお知らせください。可能な限り速やかに修正致します。
よろしくお願いします。

(※エントリ=日記パートのURLは変更なしです。)

[CardWirth] 不毛の根っこは何か、という話

(流れ的に)少し前の備忘録の続きのようなものです。

※※※
公式ファンサイトの掲示板の某スレッド進行中だった部分が切り離され、愛護協会から新たなコメントも出ました。不満があっても表に出さないで欲しい、或いはNext関連には敢えて触れないで欲しいというのが愛護協会の意思と思われ、少なくともあのスレッドに書き込む人は、もういないだろうと予想していました。
が、続くもんですね。
スレッドへの書き込みに不毛の根がある限り話題にされ続けるだろうという内容があり、それはその通りなのですが、では不毛の根を取り除いて解決可能かと考えると、もうほぼ無理としか。


不毛の根は、全く互換性のないデータ規格の存在に対する不安のようなものではないかと思います。
私自身、過去には、複数の改造エンジンが出回る可能性に備えて、最低限基本的な仕様やシナリオデータの規格ぐらいは愛護協会で一本化しておいた方が将来の面倒事を回避できると考えていた頃もありました。しかし、それはまだ全てが上手く行っているように見えていた2012年段階のことで、既に異なる規格が出現している現時点で有効とは思いません。

そもそも愛護協会の方針は、最初から一本化を図るよりも一切縛りを設けずに自然淘汰に任せる方向と思われます。
2012年3月末のgroupASK 倉貫さんのメッセージ以降、改造版やクローンなどを作ろうとする人向けの「縛り」情報が出てくることはありませんでした。また、現状を見る限り、協会内部で開発担当者がやめる場合の開発面での引き継ぎや、やめた後についての取り決めも(少なくとも改造内容を縛るものは)無さそうです。
この状況から愛護協会が何かの規制を行うと言い始めたら、むしろ驚きです。

というわけで、愛護協会に何とかしてもらうという解決は、恐らくあり得ないでしょう。
それならユーザーが出来ることはというと、CWやめるか、好きなエンジン&エディタを選んで続けるかの二択ぐらいしかないわけで。

まあ、この前の備忘録の前置きで書いたフォーマットの違いをシナリオを作る方に広めるとか、Nextの新機能を使わないなら旧フォーマットで作ろうぐらいはやってもいいかもしれんですが──
やるとまた、Next否定だとか何とか言われそうでは。やるにしても、角の立たない方法を考えないと駄目ですね。



そうそう、もう一つ。
Nextの存在は将来の枷になるか、という話。

どのエンジン向けにシナリオを作るかの面でユーザーの奪い合いもしくは流出が起きる可能性はありますが、少なくともスレッドで言われていたようにCardWirth系エンジン全体の開発が止まる要因にはならないだろうと思います。
仮に愛護協会が新たにCW1.50の後継版を作るとしてNext仕様に対応しない選択肢もあるし、NextやPyのように個人が作るクローンでは他との互換性を考慮せず自由に開発を続けることができます。
むしろ、縛りをかけずに自然淘汰に任せるという事なら、次の開発担当氏が1.50を好きに拡張して、愛護協会配布エンジンとNextで、互いが互いの専用シナリオを遊べない状態になる可能性も、絶対無いとは言えません。

よって、この場合考えるべきは「自分が選んだエンジン向けのシナリオはずっと遊べるのか」「自分が選んだエンジン向けのシナリオ作成用ツールはずっと使えるのか」であって、CardWirth全体の開発が止まるかどうかではないように思います。
作り手の努力の結晶であるシナリオが将来も遊べるのかは大きな問題だし、細分化され過ぎると各々がコミュニティを維持できなくなるかもしれませんが、それはもう、何か起きた時に対症療法的に対応を考えるしかないのではないでしょうか。



と、ここまで自然淘汰に任せるのが愛護協会の方針という予想に基づいて話しておいて何ですが、実は、もう一つの可能性もあります。

愛護協会メンバーのとある方とお話して気付いたのですが、どうも改造エンジンやクローンエンジンをバリアントの一種と見ておられるようです。この見解が個人のものなのか愛護協会としてのものなのかは分かりませんが、愛護協会内部でも、ASK版(CW1.20まで)、愛護協会改造版(CW1.28)、その後のDLL強化版(CW1.29&1.30)、Next、Py、その他過去に発表された世界観を違えたエンジンの全てがひとまとめに「CardWirthエンジン」という扱いになっているのかもしれません。

この考え方なら、どのエンジンを選ぼうと「CardWirthを選んだ」ことになるし、ユーザーの奪い合いや淘汰といった視点もなくなります。受け入れることさえできれば、案外悪くなさそうです。多くのユーザーが全てはCWと考えるようになれば、問い合わせ回答で言われていたように、各々が「気に入ったエンジン&エディタを使って、楽しく遊」ぶことができるでしょう。

まあ、掲示板を見る限り、少なくとも今のところは無理そうですかね。
世界観を同じくするエンジンは競合関係にあるため、従来バリアントエンジンと呼ばれてきたものとは別扱いに考えている人も、それなりの数居そうです。
さらに年単位で時間が経ち、経緯を知らない人がほとんどになれば違ってくるかもしれませんが。


[関連記事]
#CW新機能バックパックについて を起点に色々(10/13追記あり)
バックパックを使ってみた@CWNext(Build 131020)
バックパックを使ってみた・2@CWNext(Build 131031)
バックパックの影響を考える
CardWirthNext次バージョン個人配布移行の事
Re: CW1.60(予定)関連で頂いたコメント

[関連記事@2015年]
備忘録:2013年10~11月の記録

[微関連記事]
冒険は冒険の前から始まっているという話
新規拡張または改造版作成に関する問い合わせ、の記録

ページ移動

  • 前のページ
  • 次のページ
  • ページ
  • 1

ユーティリティ

2015年02月

1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
- - - - - - -

エントリー検索

エントリー検索フォーム
キーワード


翳の回廊(絵置き場)の一部を
TINAMIのスペースに置かせて頂いています。

pixivでも何かやっている……かも。

新着コメント

Re:Re: CWBBS[26]-14
2015/06/23 from simoom
Re:Re: CWBBS[26]-14
2015/06/22 from ああ
Re:Re: CWBBS[26]-14
2015/06/22 from simoom
Re:Re: CWBBS[26]-14
2015/06/21 from 権限がありません
Re:Re: CWBBS[26]-14
2015/06/21 from あ

過去ログ

Feed