何が起きるか対策バグで生じたカードについて(オマケ:私家版での挙動)概要バトル開始イベントの中でシナリオクリアコンテントを使用すると、戦闘終了の処理が正しく行われないまま宿に帰還する。結果としてPCのアイテム欄に戦闘時に配布されたアクションカードが残り、プレイヤーが対策を取らずにセーブして宿を出ると、次回からその宿をロードできなくなる。CW1.50特有の現象で、CW1.20〜1.30ではバトル開始イベントが無視されるため影響を受けない。[▲上へ]何が起きるか以下は、バトル開始イベントの中でパーティーが宿に戻された直後にPCの手札欄を開けてみたところです。「傷薬」と「コカの葉」各1個は元々このPCが持っていたもので、戦闘時の手札欄の中身が、そのままアイテム欄に残る模様です。戦闘の手札として技能カードが配布されていると、技能もアイテム欄に残ります。これらPCのアイテム欄にあるアイテム以外のもの、アクションカードや技能が不具合の原因となります。技能と召喚獣の所持欄には異常は発生していませんでした。影響があるわけではないPCのアイテム欄がおかしくなったからと言って、すぐに不都合が生じるわけではありません。この状態でセーブしてしまっても、その時点では特に何もなく、普通に動けます。手札欄がおかしいままなのでお勧めはしませんが、そのまま再びシナリオをプレイすることもできます。各コンテントも、(アイテムは見た目がおかしいですが、実態としては)問題なく動いているようです。いつ問題が発生するのか問題発生を確認できたのは、以下の4つの場合です(今のところ)。「範囲チェックエラー」または「ストリームからの読み取りエラー」が発生し、ロードに失敗します。荷物袋やカード置き場に入った時点で見えなくなり、移動や削除ができなくなります。見えなくなるとは具体的にどうなるかと言うと、下の画像のように何も表示されない見た目は空の「何かがあるらしいスペース」に変化する場合と、空き枠もなく完全に消えたように見える場合があります。見えないカードが生じると、ユーティリティモードでカードの更新を行う際、エラーが出るようになります。該当するパーティーを選択して冒険を再開しようとするとエラーが発生します。該当するPCを宿帳からパーティーに加入させようとするとエラーが発生します。宿に戻るという稀なパターンであること、知っていれば簡単に回避可能なことから、影響はごく限定的と考えられます。結果が重大なので、シナリオを作る際には十分な配慮が必要です。シナリオを作る場合は......とにかく、不具合が発生する構造を避けることが重要です。バトル開始イベントの中で、シナリオクリアコンテントを使わないようにします。戦闘開始と同時にパーティーを宿に戻したい場合は、R1のラウンドイベントを使うか、エリア上のイベントで戦闘を表現するなど他の方法を選ぶと安心です。シナリオを遊んでいて、この不具合に遭遇した場合は......PCのアイテム欄に「カード交換」や「攻撃」「防御」などの明らかに戦闘中しか見ないカード(アクションカード)や技能カードが入っていたら、すぐにそれらのカードをごみ箱に送り、破棄してください。全てのパーティーメンバーのアイテム欄からアイテム以外のものを残らず破棄しまえば、影響を受けることはありません。アイテム欄がおかしくなって以降、セーブしていない確信があるなら、セーブせずにCardWirthを終了させても良いと思います。シナリオ内で一度戦闘を行うと、アイテム欄の余分なカードが回収され、不具合の原因が解消されます。1つずつ手動で削除するのが面倒なら、簡単な戦闘を行うシナリオ(戦闘開始→逃走でエリアに戻るでOKです)を自作して解決するのもありかも。<注意1>一度でもセーブした場合、宿を出てしまうとロードができなくなるので、破棄は宿を出る前に実行する必要があります。逆に言えば、セーブしてしまっても、宿を出るまでは大丈夫です。落ち着いてパーティー全員のアイテム欄を確認し、そこにあるはずがないカードを破棄してください。慌てて宿を出たり、CardWirthを終了させないようにすることが、何よりも大事です。<注意2>PCのアイテム欄にあるアイテム以外のものを、荷物袋やカード置き場に移動させないでください。アイテム欄にあるアイテム以外のものを持つPCをパーティーから外したり、破棄前にパーティーの解散や冒険の中断をしないでください。上の注意書きのどれかを実行して戻せなくなった時バグで生じたカードを荷物袋やカード置き場に移動させていなければ、バグったパーティーのファイルをWPLとWPTセットで削除すれば回復します。そのかわり、削除したパーティーは復活できません。パーティーを失いたくない時、バグで生じたカードを移動させてしまった時は、バイナリエディタで問題部分を削除するしかありません。バグで生じたカードを宿内から完全に除去すれば、元通り読み込めるようになります。編集を間違うと宿が完全に使い物にならなくなります。自己責任でお願いします。[▲上へ]バグで生じたカードについて効果系カードに似ているが......バグによってアイテム欄に生成されたアクションカードや技能カードの中身を覗くと、エディタで作成した効果系カードに存在する設定項目のうち、先頭からホールド状況までの各種共通部分のデータを持っています。これはバグで生じた技能カードも同じで、通常なら末尾にある技能レベルと使用回数の情報が存在しません。荷物袋やカード置き場に移動した際、Environment.wydに記載されるカードの種類を表す番号は「0」です。→通常:技能=1、アイテム=2、召喚獣=3内容情報の先頭に存在するカードの種類番号は、PC所持欄にある時、荷物袋やカード置き場にある時共に「0」です。→通常:技能=5、アイテム=3、召喚獣=6(CW1.50のみ/CW1.20〜1.30ではカードの種類に関わらず全て0)PCのアイテム欄にある時は画像が見えていますが、宿データには画像は書き込まれていません。アイテム欄にあっても、アイテムとしてカウントされないアイテム欄がバグったところへ、さらにアイテムカードを配布すると、元々あったカードのうちアクションカードや技能を除くアイテムのみの枚数+追加配布したアイテムカード枚数が所持上限に達した時、カードの配布先が荷物袋に変わります。(※CW1.28以降では、PCのアイテム欄にアイテムを配布した時、入らない分は荷物袋に入る。)バグで生成されたカードは、やはりアイテムとして数えられていないようです。アイテム所持欄に存在するカード数には含まれ、所持上限よりも所持数の方が多くなることがあります。例:以下は、元々アイテム欄に空き枠が1つあった場合。追加配布したアイテム「確認用I」は、1つ目がアイテム欄の空き枠に収まり、2つ目以降は荷物袋に配布されます。その他バグでアイテム欄に生成されたアクションカードや技能カードを荷物袋やカード置き場に移動させた時、パーティーのWPTファイルやEnvironment.wydに書き込まれるカードの情報は、データ長や保存項目など形式的には問題ないようです。問題なく生成されます。PCが所持していた時の内容がそのまま書き込まれていて、何か増えたり減ったりはありません。PCが所持している状態では普通に取り扱うことができ、ユーティリティモードでカードの更新を行ってもエラーが発生しません。[▲上へ](オマケ:私家版での挙動)CardWirthNext不具合修正版(v.1.6.0.15)が公開済みです。v.1.6.0.14まではCW1.50と同じ症状が出ますので、シナリオ作成の際には過去バージョンを利用している人のために対策をした方が無難です。CardWirthPy(Reboot)v.0.12.2の時点で、特に不都合は起こりません。宿に帰還後PCの手札欄にアクションカードが残ることはないし、次回以降も正常にロードできます。宿に戻った直後にPCにカーソルを合わせると、下のような戦闘時の表示と思われるものが消えずに残っているのが確認できました。この表示は一旦宿を出て戻ると消えており、その後に影響を及ぼす事もないようです。この戦闘の表示が残る現象はv.0.12.3β1で修正され、それ以降のバージョンでは発生しません。