[CardWirth] ユーザー作成バリアントにCardWirth Extenderを導入する
【メモ箱に内容をコピー済み】
日記記事は書かれた日付時点のもので、内容が古いことがあります。上のリンク先で最新の情報をご確認下さい。
※※※
大江戸バリアントや学園バリアントにCardWirth Extender(以下、「拡張DLL」と表記します)を導入しようとして、つまづいた方もいらっしゃるのでは、という事で。
バリアントエンジンへの拡張DLL導入方法は、
- エンジン本体にパッチを当てる。
- extender.dll及び同梱のcwconv.dllを、エンジンと同じ場所に置く。
という手順になりますが、場合によっては、あともうひと手間必要になります。
セーブデータを見る際、拡張DLL側で「Yado」フォルダを呼んでいるため、セーブデータの保存フォルダ名が「Yado」でない場合にエラーが出るからです。
これを解決するには、拡張DLLの修正が必要です。
TwitterでCardWirth Extenderの作者さんにお尋ねしたところ、DLL内のセーブデータの場所を個人で書き換えても良いという事でしたので、修正場所を書いておきます。
修正するのは2箇所です。
アドレス5B1C8及び5B6C4を先頭に4文字ずつ、「yado」という文字列を、そのバリアントのセーブデータ保存フォルダ名に書き換えれば、エラーは出なくなります。
例えば大江戸バリアントなら「yado」→「naga」、学園バリアントなら「yado」→「heya」といった具合です。
(※書き換える場所を見つけ辛い場合は、「yado\」で文字列検索してみて下さい。)
※※※
ノーマルエンジンとバリアントエンジン、または複数のバリアントエンジンを同じフォルダ内に共存させている場合は、さらにもうひと手間。
- まず、パッチと新cwconv.dllの導入を済ませて下さい。
- 上の方を参考に、それぞれのバリアントに対してセーブデータの場所を適当に書き換えた拡張DLLを準備して下さい。
- 準備した拡張DLLをお互いかぶらないように変名し、エンジンと同じ場所に置きます。
この時、変名前後でファイル名の文字数は同じにして下さい(拡張子まで含めて12文字)。 - バイナリエディタで各バリアントのエンジン本体を開きます。
- アドレスCB50Aを先頭に12文字、「extender.dll」の部分を、そのバリアント用の拡張DLLの名称に変更します。
この修正を、変名DLLを準備した全てのバリアントエンジンに対して行います。
共存方法は、以上です。
この際、バリアントの種類別に、別々のフォルダに分けた方が早いかもしれません。
※注意:
拡張DLLを自力で書き換えた場合、原則バグ報告の受け付け対象外となりますのでご注意ください。
詳しくは→CardWirth Extender FAQ