難解度「A+」
※このページ全体の難解度です。
一括系
 例えば、体力の値を別々の2カ所に記録していて、両方の値を書き換えなくてはならないという場合、この一括(Bundle:バンドル)系を利用します。一括系には、BundleCalc(b_calc:一括電卓)やBundleToggle(b_toggle:一括トグル)、BundleList(b_list:一括リスト)などがあります。


一括電卓項目
 バンドルカルク項目(b_calc)です。アイテムがたくさんあって、全てを書き換えるときなどに便利ですね。
[subject]項目名: b_calc, アドレス, チェインファイル, オフセットか,
          最小値, 最大値, 符号の有無, エンディアン
です。表記上2行で書いてますが、実際は1行で書いて下さいね。
アドレス読み書きする対象のアドレスです。詳しいアドレスの書き方は、《A-アドレス》を参照。
チェインファイル読み書きするアドレスを羅列したチェインファイルを指定します。ファイル指定の詳細は、《C-ファイル指定》を参照。
オフセットかチェインファイルに記述したアドレスに、この項目のアドレスを加算するかを指定します。 offset を指定すると、読み書きするアドレスは、「チェインファイルに書いたアドレス+項目のアドレス」になります。 real を指定すると、チェインファイルに書いたアドレスがそのまま読み書きするアドレスとなります。つまり、オプションに real を指定したとき、項目のアドレスは不要になります。省略すると、 offset が選択されます。
 なお、「チェインファイルに書いたアドレス」は[replace]等の属性の影響を受けますが、オフセット値は属性に関係なく、書いたとおりの値が採用されます。
最小値
最大値
符号の有無
エンディアン
電卓項目に準じます。
 項目名は、"/"区切りで表示先を分けることができます。詳細は電卓項目に準じます。
 まとめとして、いくつかのパターンで一括電卓項目を書いておきますね。
[subject]薬草類 個数:b_calc,0,アドレスリスト1,real,0,99
[subject]毒薬類 個数:b_calc,0x500000,アドレスリスト2,offset,0,99
アドレスリスト1.CHN
0x400000
0x400004
0x400008
0x40000C
0x400010
アドレスリスト2.CHN
0x00
0x04
0x08
0x0C
0x10
なお一括電卓項目での現在値は、「羅列された全てのアドレスの値」の平均になります。


一括トグル項目
 一括電卓項目のトグル版です。ちゃちゃっと行きますよ〜!
[subject]項目名: b_toggle, アドレス, チェインファイル, オフセットか
です。チェインファイル中には、
アドレス, ONのバイト列, OFFのバイト列
という形で連ねていきます。(バイト列の詳細は、《B-バイト列》を参照。)
アドレス読み書きする対象のアドレスです。詳しいアドレスの書き方は、《A-アドレス》を参照。
チェインファイル読み書きするアドレスとバイト列を羅列したチェインファイルを指定します。ファイル指定の詳細は、《C-ファイル指定》を参照。
オフセットかチェインファイルに記述したアドレスに、この項目のアドレスを加算するかを指定します。ファイル中のアドレスとオフセット値の扱いについては、《2.3-bundle-一括電卓項目》を参照。
 項目名は、"/"区切りで表示先を分けることができます。詳細はトグル項目に準じます。
 まとめとして、一括トグル項目の例を書いておきますね。
[subject]CGモード一覧:b_toggle,0x400000,トグルリスト,offset

トグルリスト.CHN
0x00,01,00
0x04,01,00
0x08,0x10-01000000,00000000
なお一括トグル項目の場合、羅列されたバイト列の、どれか一つでもONでないならば、全体としてはOFFとして扱われます。


一括リスト項目
 一括電卓項目のリスト版です。
[subject]項目名: b_list, アドレス, リストファイル, 初項, 公差,
        チェインファイル, オフセットか
です。チェインファイル中には、読み書きするアドレスを羅列します。
アドレス読み書きする対象のアドレスです。詳しいアドレスの書き方は、《A-アドレス》を参照。
リストファイル
初項
公差
リスト項目に準じます。
チェインファイル読み書きするアドレスを羅列したチェインファイルを指定します。ファイル指定の詳細は、《C-ファイル指定》を参照。
オフセットかチェインファイルに記述したアドレスに、この項目のアドレスを加算するかを指定します。ファイル中のアドレスとオフセット値の扱いについては、《2.3-bundle-一括電卓項目》を参照。
 項目名は、"/"区切りで表示先を分けることができます。詳細はリスト項目に準じます。
 まとめとして、一括リスト項目の例を書いておきますね。
[subject]武器一覧:b_list,0x400000,武器リスト,0,1,アドレスリスト,offset

武器リスト.LST
ひのきの棒
革の鞭
短剣
アドレスリスト.CHN
0x00
0x04
0x08
なお一括リスト項目の現在値(選択行)は、「((「羅列された全てのアドレスの値」の平均)−初項)/公差」になります。


一括実数電卓項目
 後述する実数電卓項目(f_calc)の、一括版です。
[subject]項目名: bf_calc, アドレス, チェインファイル, オフセットか,
          最小値, 最大値, サイズ記号, エンディアン
です。表記上2行で書いてますが、実際は1行で書いて下さいね。
 各オプションは、一括電卓項目及び実数電卓項目のそれに準じますので、詳細はそちらを参照してください。

 項目名は、"/"区切りで表示先を分けることができます。詳細は電卓項目に準じます。
 まとめとして、いくつかのパターンで一括実数電卓項目を書いておきますね。
[subject]各国取引額:bf_calc,0,アドレスリスト1,real, 2550.0, 9999.91
[subject]全国平均:bf_calc,0x500000,アドレスリスト2,offset, -9999.99, 999999.99
アドレスリスト1.CHN
0x400000
0x400004
0x400008
0x40000C
0x400010
アドレスリスト2.CHN
0x00
0x04
0x08
0x0C
0x10
なお一括電卓項目での現在値は、「羅列された全てのアドレスの値」の平均になります。




ねくすと せくしょん⇒

≪せくしょん ばっく