もう発売からかなり経過する「ゼルダの伝説 Breath of the Wild」。
やり尽くしたという方も少なくないだろう。
さて、IST紹介第三回となる今回、いよいよ応用技に入る。
当然のごとく、基本となるISTは理解できていることが前提だ。
そのあたりがよく分かっていない方は、前々回、前回の記事を参照して理解してから戻ってきて欲しい。
今回は、矢や素材の個数を増やす方法を紹介しよう。
名前は、「DIC」と呼ばれているのを見かけたことがある。
…このあたりから、原理が非常に複雑になる。
これまで分かりやすさ重視でぼかしていた部分までしっかり見ていく必要が出てくるのだ。
よく分からない場合は、繰り返し読む、他の情報も参考にする、捨てデータで色々試してみるなどして欲しい。
注意事項や操作環境は初回と同じだ。
そちらを熟読し、同意頂ける場合だけ本編を読み進めて欲しい。
原理
さて、今回もまずは原理だ。
前々回、前回の原理が分かっている前提で書かせてもらうため、先ほど書いた通りまだそちらが分かっていない方は先に理解してから戻ってきて欲しい。
用語だけ見ておくと…
- 引継ぎ枠:儀式で用意する、ISTで引き継ぐアイテム数
- mcount:ゲームが認識している所持アイテム数
mcount = 実際の所持アイテム数 – 引継ぎ枠
こんな感じだ。
では今回の原理、大まかに以下3ブロックに分けて見ていく。
- ライフ値
- MemoryとGamedata
- DIC原理
かなり複雑なので、1個1個確実に進めていただきたい。
ライフ値
まずはこのライフ値という数字から。
そもそもの話ではあるが、このゲームの装備(武器、弓、盾)には耐久値があるのはご存じだと思う。
〇回使ったらその装備が壊れるという数字だ。
が、ゲーム内部ではこの耐久値そのままで管理されているわけではない。
じゃあどうやって管理されているかというと、それが今回のライフ値だ。
ライフ値は、その名の通り装備の体力だとイメージすると分かりやすい。
値は、耐久値の100倍になっている。
例えば、新品のナベのフタ。
これは耐久値が10で、ライフ値は1000となっている。
1回使うと耐久値が9になるのは、ライフ値的に考えると100ダメージ受けて900になる、というイメージだ。
なぜ100倍かというと…深く突っ込むとプログラムの誤差周りの話になってしまうので、省略させてもらう。
とりあえず、装備のライフ値は耐久値の100倍と覚えておこう。
さて、このライフ値は装備だけで使用されているわけではない。
矢や素材など、1スロットで複数持てるアイテムでも使用されている。
それが表すものは、そのアイテムの個数だ。
こちらはライフ値がそのまま個数となっており、例えば10個のリンゴのライフ値は10だ。
…勘のいい方ならお気づきだろう。
今回のDICでは、装備のライフ値を、素材などに移植するのだ。
ポイントは、このライフ値は装備情報に含まれていること。
一旦ライフ値はここまで分かってれば問題ない。
次は、ポーチ内アイテムのデータの話に移ろう。
MemoryとGamedata
いきなり英語が出てきて焦るかもしれないが、落ち着いて読み進めて欲しい。
これらは、ポーチに関するお話だ。
このゲームにおけるアイテムは、ポーチに格納されている。
当然だが、ポーチは1つだ。
が、内部的には2つのデータで管理されている。
1つは、目に見えるポーチ情報であるMemory。
ポーチを開いて確認しているのは、基本的にこのMemoryになる。
もう1つはGamedata、こちらは目に見えず、内部のみで管理されている。
なぜそんなものがあるかについて、例えばサイハテノ島の試練が該当するが、このゲームにはアイテムが一時没収されるイベントがある。
その時に、元に戻すための情報として使われているようだ。
それ以外にも、今回の原理に関連するところで、セーブにも使用されている。
というわけで、セーブ周りの処理を見ていこう。
オートセーブ、手動セーブどちらでもいいのだが、セーブしたとする。
この時、まずMemoryの装備情報が一旦Gamedataに書き込まれる。
その、装備情報が反映されたGamedataを、そのファイルが持っているアイテムとしてセーブデータに保存する。
こんな処理だ。
ポイントは、ここではこれらに含まれるアイテム自体の同期はされないこと。
前回までのISTでは、引き継ぎ後にポーチ開閉等で同期する必要があると書いた。
それが、この2つのアイテム情報を合わせるためだ。
…言い換えると、同期しない状態でセーブすると、ズレたアイテム状況で装備を変更することになる。
このあたりから、さっきのライフ値が絡んでくる。
というわけで、いよいよDICの原理だ。
DIC原理
これまでの話を理解してもらったうえで、DICの原理を見ていこう。
まず、繰り返しになるが、最初に説明したライフ値は装備情報に含まれている。
これを、本来であれば装備できない素材などに移すことで、ライフ値を移植して個数を増やすことになる。
ちょっと、具体例で2つのデータの状況を見比べてみよう。
まず、以下のようなアイテム状況だったとする。
- 武器:3個
- 弓:2個
- 矢:2個
- 盾:4個
- 服:3個
- 素材:たくさん
素材の具体的な数や料理以降は関係ないので省略する。
また、これも以前書いているが、ポーチ情報は武器側から並べた一列のデータとして扱われている。
図で書くと以下のような感じだ。
ここで、素材の先頭にあるアイテムの個数をDICによって増やしたいとしよう。
装備のライフ値を移植するので、移植元となるアイテムも考える必要がある。
今回は、盾ポーチの末尾にある盾のライフ値を移植するとしてみる。
まず、移植元の盾を装備した状態でセーブし、移植用のセーブデータを作る。
この段階ではMemoryとGamedataはズレておらず、以下のようになっている。
ここに、ISTでアイテムを移植する。
後で計算方法は紹介するが、今回の場合は4つ、盾より前にアイテムを移植することになる。
ちょうど盾を4つ持っているので、これらをISTで移植しよう。
移植直後、同期していない状況で、MemoryとGamedataに差が生じる。
それぞれの状況は以下の通りだ。
この時点でポーチを開くと、上のMemoryの状況が見える。
では、このまま同期せずにセーブしたとしよう。
すると、Memoryの装備情報がGamedataに反映され、そのGamedataがセーブデータに格納される。
この時の装備情報について、以下のように反映される。
- Memoryについて、先頭から何番目のアイテムが装備されているか数える
説明の都合上、これを\(n\)番目とする - Gamedataについて、先頭から\(n\)番目のアイテムに、Memoryの装備情報を書き込む
上の図だと、Memoryにおいて装備されている盾は先頭から15番目にある。
この場合、Gamedataの15番目に、元々の盾の装備情報が書き込まれる。
Gamedataの15番目は、素材の先頭。
そこに、盾のライフ値の情報も含めて書き込まれるのだ。
これで、黒丸の素材のライフ値が盾のライフ値に置き換わる。
素材におけるライフ値はその個数だったため、高い耐久値(=ライフ値)の装備から移植すると個数が増えるという仕組みだ。
なかなかに複雑だが…ここはしっかり理解しておかないと狙ったアイテムを増やせない。
各データの動きなどをしっかり把握しておこう。
DICのポイント
具体的な手順の前に、ポイントを幾つか補足しておく。
1つ目、原理が理解できていれば分かると思うが、今回のDICではアイテムの移植は確定していない。
つまり、手順内で売却した服や引継ぎ枠作成に使った素材は戻ってくるし、矢の重複なども心配する必要がない。
そこは安心して欲しい…が、誤って同期してしまうと色々まずいことになる可能性が高いため、オートセーブ(捨てデータ)を活用するといいだろう。
2つ目、そのオートセーブを使う場合なのだが…ISTで引き継いだ後にポーチを開いてしまうと、どうあがいてもオートセーブで手順を進めることができなくなる。
そのポーチ画面を閉じるタイミングで、同期が完了してしまうからだ。
そのため、オートセーブでDICを行う場合には、ISTで移植した後そのままで、アイテムに関する全ての行動を取らずにオートセーブを入れる必要がある。
ここは手順でも補足するので、そちらも参照してほしい。
3つ目、各アイテムの装備。
最初にセーブデータを用意する時は、必ずライフ値移植元となるアイテムを装備しなければいけない。
ISTで移植する時は、逆に移植元と同じカテゴリの装備は外しておく必要がある。
なぜかというと、まずISTで移植した後に装備を変更すると、それでMemoryとGamedataの同期が入り、アイテム移植が確定してしまう。
そのため、先に装備しておく必要がある。
逆に、ISTで移植するものの中に装備しているものが含まれていると、恐らくそちらが優先されてしまう。
すると、結局同じアイテムに装備情報が書き込まれ、DICが失敗する…と思う。
この図の、Memory内の△が、Gamedata内の〇に移植される。
これは結局同じアイテムなので、素材を増やすことができない…と思われる。
手順でもこのあたりの確認は入れるので、気を付けよう。
なお、他のカテゴリー…例えば、盾の耐久値を移植する時に、武器や弓の装備までは外す必要はない。
4つ目、服について。
メインデータである程度進めていると、結構な数の服を持っていると思う。
原理で見てもらった通りで、服の数だけ盾より前にアイテムを移植することになる。
…が、まあ今回は捨てデータでやることを想定しており、売れる服は全て手放すので、そこまで大きな支障にはならない。
売れない服があまり多いと難しいので、そこは気を付けよう。
また、メインデータで直接やる場合は可能な限り服が少ない最序盤にやることをオススメする。
5つ目、このDICで増やせるアイテムの上限について。
矢や素材など、1スロットで複数持てるアイテムならこれで増やせるのだが、矢とそれ以外では違いがある。
矢は上限が無いのに対し、それ以外はいくら増やそうと個数が999個に制限される。
そのため、素材を増やしたい場合は、耐久値が10以上のものを使うことでカンストさせることが可能だ。
6つ目、上の説明は盾で行っていたが、もちろん武器や弓のライフ値を移植することも可能だ。
また、上手く使えば同時に複数カテゴリーの装備からライフ値を移植できる。
やりようによっては最大3つのアイテムを一気に増やすなんてことも可能になる。
これはRTAでも使われているのを見たことがあり、その時は同時に弓のライフ値を古代兵装・矢に、盾のライフ値を妖精に移植していた。
が、そのぶん計算は複雑になるので、余裕があればチャレンジしてみるといいだろう。
7つ目、最後にして最大の落とし穴。
何かというと、移植元をずらすためにISTで持ってくる装備なのだが、しっかり空きポーチに入らなければならない。
ちょっと具体的に、例えば盾のポーチ枠が6枠で、今持てる最大数の6個の盾を持っているとする。
そして、服を持っておらず、増殖したい素材が先頭にある状況で考えよう。
この時、1つのアイテムを移植元の盾より前に移植すればいい。
が、元々6個の盾を持った状態でセーブし、そこにISTで盾を持ってくるとどうなるかというと…最後尾にある盾が消えてしまう。
つまり、これではDICが上手くいかない。
ではどうするかというと、しっかりISTで持ってくるだけの数を開けておこうという話だ。
これも、確認する部分を手順に入れることにしよう。
一旦、ポイントはこのくらいだ。
DIC手順
では、実際に手順を見ていくのだが、今回は色々と前提を限定させてもらう。
何しろ原理が難しく、まだ理解できていない方もいらっしゃるだろう。
そんな方でも、とりあえずやり方を真似すれば増やせる、という状態に持っていきたい。
まずは前提から確認し、手順を見ていこう。
手順の前提
まず、増やしたい対象は素材としよう。
ライフ値の移植元は盾とする。
耐久値が10以上ならなんでもいいのだが、今回はハテノ村の入り口近くの家にあるナベのフタを使うことを前提にする。
ナベのフタは最大耐久値が10なので、手順直前に取得し、新品を使うように。
その他の盾でも、耐久値が10以上ならなんでも大丈夫。
で、今回の手順は、先ほども少し書いた通りでオートセーブのみを使う方法で進めていく。
手動セーブにメインデータが入っているという想定で、今回使うオートセーブは捨てデータになる。
最後はメインデータに増やした素材を移植するところまで手順に入れる。
そのため、時間は多少かかるが代償なしだ。
ただ、マスターモードだと意図していないオートセーブが入った時点で失敗する可能性が高いため、通常モードでやることをオススメする。
もちろん、通常モードのオートセーブで増やし、それを最後だけマスターモードに切り替えて移植しても大丈夫なので、そこは自身のデータ状況に合わせて変えて欲しい。
事前準備
では、まずは事前準備から。
ライフ値の移植元となる盾、移植先となる素材を入手し、両者がポーチ内に存在する状態にしよう。
移植先の素材は最低1つあれば十分だが、この後引継ぎ枠を作るのでそれに使いたければ2つ以上持っておくといい。
それと、例のごとくコログの実や克服の証を持っていた場合、それを使い切っておく。
最後にメインデータへ転送する時に重複するのを防ぐためだ。
これらがOKになったら、ここまでは特にまずいことをしていないので、保険で手動セーブを入れておこう。
これ以降、明確に手順で書くまで手動セーブは厳禁だ。
次に、売れる服を全て売却する。
売れない服が多少残るかもしれないが、数個程度であれば大丈夫だ。
これは盾ポーチの枠数と関連しており、手順の後に少し補足する。
そうしたら、アイテムの順番を変化させよう。
移植元となる盾を盾ポーチの末尾に、移植先となる素材を素材ポーチの先頭に移動させてほしい。
アイテムはポーチ内にスロットが無い状態で取得すると、そのポーチの最後尾に移動する性質がある。
盾は移植元を一回手放し、それをすぐ拾うだけで大丈夫。
素材は、移植したいものより前にあるものを一度全部置き、取得を繰り返せばいい。
この後このデータは捨てデータになることと、素材は引継ぎ枠作成くらいにしか使わない、かつここで手放しても後で戻ってくるため、6個以上持っている素材は…
- 一回2個持ってその場に置く
- お店で今置いた素材を全部売る
- 置いておいた2個を取得する
こんな感じで後ろに回すといいだろう。
一旦、すぐできる事前準備はここまで。
必要な引継ぎ枠確認
では、やはりISTでアイテムを移植するので、必要な引継ぎ枠を求めなければいけない。
今回は2段階に分けて計算する必要がある。
まず1段階目、今回のDICでライフ値を移植するために、移植元の盾より前にいくつのアイテムを移植する必要があるか。
言い換えると、移植元からいくつずらすと、移植先になるか。
原理を思い出してほしいが、ISTで移植することにより、その数だけMemoryとGamedataに差が生じる。
1つずらして移植先の番目になるなら盾より前に1つのアイテムを移植、2つずらせばいいなら2つのアイテム…という感じ。
つまり、移植元の盾、移植先の素材の間にあるアイテム数をカウントし、それに1を足した数がここで欲しい数になる。
今回は計算を楽にするよう準備をしてもらっていて、移植元と移植先の間は服だけのはず。
この場合、今残っている服の数をカウントし、それに1を足してもらえれば大丈夫だ。
服が無い場合、0に1を足すので1となる。
もし移植元の盾が末尾でなかったり、移植先の素材が先頭でなかったりする場合は、その間のアイテム数でカウントしよう。
次に2段階目、1段階目で求めた数だけ盾より前にアイテムを移植するにはいくつの引継ぎ枠を作ればいいかを計算。
まあ、素材や料理は手放せばいいので、大事なものと残ってる服の数を1段階目に足してもらえればいい。
ちょっと、私のデータで具体例を見てみる。
まずは第一段階、盾ポーチから素材ポーチまで見てみよう。
今回のライフ値移植先は、古代の巨大なコアだ。
移植元は装備しているナベのフタ、そこから服3つを挟んで古代の巨大なコアがある。
つまり、移植元、移植先の間に3つアイテムがあるため、プラス1して4つが第一段階で求めた数になる。
次に第二段階、その4つの盾を移植するために必要な引継ぎ枠だ。
服は上の通りで手放せないものが3つ、素材と料理は全て手放せるので、あとは大事なものだけカウントして4を足せばいい。
大事なものは9個あるため、最終的に9+3+4=16個の引継ぎ枠が必要だと分かった。
具体例はここまで、手順に戻ろう。
必要な引継ぎ枠を求めたら、その分の引継ぎ枠を作れるだけの素材と、移植する盾より前のアイテムが足りているか確認する。
念のため補足で、ライフ値移植元の盾自体も移植に使って構わないし、移植先の素材も引継ぎ枠作成に使って大丈夫。
もし足りなければ、必要数集めて欲しい。
ここで、先ほどの注意だ。
盾を移植する数(=第一段階で求めた数)だけ、盾ポーチに空きを作れるかも同時に確認をしておこう。
先ほどの具体例の場合、4つの盾を移植するため、4つの空きが必要だ。
ちょっと見づらいかもしれないが、今回盾の枠が全部で9枠あるデータで、5つの盾を持っているので4枠空いている。
必要な移植数だけの盾を持っており、同時にその分の空きがあるため、これで大丈夫。
もし枠全体が足りない場合、弓や武器もISTで移植することになり、余計に複雑になってしまう。
そこまで説明すると話が非常に難しくなってしまうので、なんとかして服を減らすなり盾ポーチを増やすなりして欲しい。
いっそのこと、手動セーブせずに最初からで始め、アイテム数増殖用のデータを作るのも1つの手かもしれない。
各種必要なアイテムはISTでメイン側から持っていけばいいし、なんならパラセールを持っていけばいきなり台地の外に出れるので、リモコンバクダンだけ入手して馬宿に行けばそこまで時間はかからないと思う。
ここまでOKなら、必ず移植元の盾を装備しておこう。
そして、オートセーブを入れる。
このセーブデータにISTで一度アイテムを移植するため、時間などをメモしておくといいだろう。
引継ぎ枠作成
では、先ほどカウントした引継ぎ枠を作ろう。
多分大丈夫だとは思うが、もし引継ぎ枠の作り方が分からない方はこちらを参考にしてほしい。
移植
引継ぎ枠が作れたら、いよいよ移植パートだ。
まず、残っている素材があれば全て手放す。
こうすることで、ちょうど必要な盾より前のアイテムを移植できる状態になる。
念のため、カウントの1段階目で求めた数だけ、盾より前のアイテムを移植できる状態になっているか確認しておこう。
それがOKなら、重要なポイント、盾の装備を外しておく。
素材持ちバグを使った場合は盾を外して終わるので大丈夫だと思うが、負荷世界バグだと装備しっぱなしの可能性が高いだろう。
ここで装備していると失敗するので、気を付けて欲しい。
それもOKになったら、先ほどオートセーブしたデータをロード…するのだが。
ここからも注意ポイント、このロード以降、基本的にアイテムやポーチが絡む行動は禁止と思ってもらいたい。
ようは、ここでMemoryとGamedataの同期をしない状態でオートセーブを入れたい。
で、少なくともポーチの開閉やポーチ内整理をしたら確定してしまうのは前回までの通り。
それ以外にも、試してはないが…クイックメニューを出したり、アイテムを拾ったりなんかも同期される可能性がある。
左スティックのみでたき火までたどり着き、暇をつぶしてオートセーブが入るのを待つくらいでいいだろう。
あるいは、近くに祠があれば、近づくことでもオートセーブが入りやすい。
オートセーブが入ったらゲームを再起動、最新のオートセーブをロードしてみよう。
これで上手くいっていれば、素材の先頭が999個になっているはずだ。
メインデータへの転送
最後、これをメインデータへ転送するのだが、これは簡単だ。
大事なものの数+1個の引継ぎ枠を999個にした素材以外を使って作り、料理とその他の素材を手放してメインデータをロード。
今度は引き継ぎを確定させ、手動セーブすればOK。
ISTの基礎が分かっていれば、ここは何の問題もないだろう。
補足:売れない服の数と必要な盾ポーチ枠
さて、ちょっとコラム的な内容だが、売れない服がいくつあったら、盾ポーチ枠がどれだけ欲しいかをまとめてみよう。
前提として、盾だけをISTで移植して欄をずらすとしてみよう。
また、移植元の盾は盾ポーチの末尾、移植先の素材は素材ポーチの先頭で固定する。
まず、売れない服が一個もない…つまり盾のすぐ次に増やしたい素材を配置できる場合、1つの盾を移植すればいい。
そのために、元々1つの空きが必要なので、計2枠あれば十分。
次に売れない服が1つの場合、2つの盾を移植する必要がある。
2つの空きも同時に持っておく必要があるため、計4つの欄が必要だ。
元々の盾ポーチ枠は4つなので、ここまでなら拡張していない状態でも可能だ。
では、2つの売れない服があった場合。
この時、3つ分ずらすので3つの盾を移植しなければならず、その分の空きも必要。
よって、6つの枠が最低でも必要となる。
以降、3つの服なら8個のポーチ枠、4つの服なら10個のポーチ枠…といった感じで増えていく。
ようは、売れない服の個数に1を足し、それを2倍した数だけの枠が必要だ。
今のデータでできるかを確認したい場合は、参考にしてみて欲しい。
おわりに
一応前回までのISTの発展技なのだが、原理理解の難易度が比較にならないほど難しい。
また、気を付ける点が通常のIST以上に多かったり、細かいミスで失敗する可能性が高かったりと、慣れないうちは上手くいかないことも多いだろう。
が、一度成功して知識が線で繋がれば、あとは自在に増やせるようになるはずだ。
あくまで実施した場合は何があっても自己責任だが、もしたくさん欲しい素材があればチャレンジしてみてはいかがだろうか。
コメント