HashチェックのあるAssets.Bundleの改造の仕方
Suzerain V3.08からテキストデータの保存位置が変わりました。
今バージョンからBundle形式で圧縮されています。なので、テキスト検索にも引っかからず、しかもHashチェック付きなので改造もできないと難題でした。
その改造方法を書いていきます。
1)テキストExport
2)テキストInport
3)MODの適用です。
テキストデーターはファイル名から推測して見つけました。
場所は
Suzerain\Suzerain_Data\StreamingAssets\aa\StandaloneWindows64 フォルダ内の
database_assets_all_fe14cc800f923166ab13450578254384.bundle 内にあります。
![](https://assets.st-note.com/img/1715345180666-bsaVfVYDmA.png)
ひとまず、ここからSuzerain 2.xファイルのExprot とImportの方法を書きます。
1)Export
UAVEAは最新版を使用して下さい。(https://github.com/nesrak1/UABEA)
UABEAvaloniaを起動
File-Openでdatabase_assets_all_fe14cc800f923166ab13450578254384.bundleを指定
FileかMemoryかを聞かれるのでMemoryを選択
![](https://assets.st-note.com/img/1715345200176-fEk1GUnJDl.png)
右下のInfoを押す
Suzerain 2.xが見つかると思うので、それをExprot Dump
少し代わっていますが、フォーマット的にはV3.07と同じなので、ここからは以前と同じです。
![](https://assets.st-note.com/img/1715345250974-IqUejMNA3G.png)
2)Import
先程のExport Dumpをした画面で、Imprt Dumpを押して修正したテキストをImportします。
File-SaveでCAB-4baef2dda5f38ed8b34b5cc0e775ce26内に格納
注意書きが出ますが、OK
![](https://assets.st-note.com/img/1715345278117-SmcFFmZHrx.png?width=1200)
![](https://assets.st-note.com/img/1715345301763-RwHQDIeUTV.png)
File
Saveでdatabase_assets_all_fe14cc800f923166ab13450578254384.bundleに書き込み
これで変更が完了しているはずです。
![](https://assets.st-note.com/img/1715345313699-T4mTTXsEgR.png)
3)MODの適用
Bundle形式となった場合。つくる人がCRCチェックを有効にしている場合、ファイルの改変をすると壊れていると判断してゲームが動きません。
なのでCRCチェックを無効にしてやる必要があります。
それにはcatalogファイルを改変してやる必要があります。
Suzerainの場合は、
Suzerain\Suzerain_Data\StreamingAssets\aaフォルダにcatalog.jsonとしてありました。
CRCチェックを無効化するソフトがありますので、それを使います。
まずUAEBAのサイトへ聞きます。
ここにリンクがありますので、Example.zipをダウンロードして解凍します。
![](https://assets.st-note.com/img/1715526574111-OAryl3vyvr.png?width=1200)
次に、解凍したフォルダで右クリック、ターミナルで開くを押します。
![](https://assets.st-note.com/img/1715526880657-q65Q1qjaHI.png)
ターミナルが開くので、
Export.exeだけで実行します。
そうすると、
need args: <mode> <file>
modes: searchasset, patchcrc
とHelpが表示されます。
なので、
Export.exe patchcrc catalog.json(ファイルをドラッグすると良い)
で実行します。
catalog.jsonのあるフォルダに、catalog.json.patchedというファイルが出来上がっています。これをcatalog.jsonにするとCRCチェックを回避することができるようになります。
![](https://assets.st-note.com/img/1715527348544-KgHaW6K0pA.png?width=1200)