神殿岸2

2と言っても実質1.5みたいなもの

「ウィザードリィ」ACバグの本当のところ

ファミコンウィザードリィ(1作目)の「ACバグ」と呼ばれる現象については、ご存じの方も多いと思う。

簡単な説明をすると、ファミコン版1では味方のAC(アーマークラス)に敵の攻撃を防ぐ効果がない。
代わりに敵自身のACが判定に使用されており、バブリースライムのようなACの高い敵は命中率が高く、マーフィーズゴーストのようなACの低いものは命中率も低い。

この詳細を解析し公開したのは、NESWizardryのTASを作成したTaoTao氏である。

Wizardry(NES) 解析
https://taotao54321.github.io/appsouko/work/Game/Wiz1_NES/
(もとは2008年に公開されたが昨年移転していた)

このバグの確認は簡単だ。
B1のマーフィーズゴースト相手に、冒険者一人で「みをまもる」を行い命中率を実測してみよう。

マーフィーズゴースト(B1)での検証

NES解析によると「みをまもる」時のマーフィーズゴーストは命中率25%になる。
4つの条件で各200回実施して、マーフィーズゴーストの命中率を実測調査した結果は以下の通り。

条件 命中率(実測)
1.AC10(防具なし) 25%
2.防具ありでAC0 26%
3.さらにポーフィックを3回使いAC-12 22%
4.さらにモーリスを3回使いマーフィーのACを上げる 69%

※今回の検証はレトロフリークで実施している。

試行回数は多くないし、1~3の条件で多少の誤差は出ているが、「みをまもる」時のマーフィーの命中率は25%に近いようだ。おおざっぱな確認としては十分だろう。
そして、解析通り防具や魔法によりACを下げても影響は確認できない。
逆にモーリスをかけた場合は明らかに命中率が上がっている。解析によるとモーリス3回で45%命中率が上がり、マーフィーの命中率は70%になっているはずで、かなり近い数値が記録できた。
味方のACは効いておらず、敵のACが敵自身の命中率に影響する。すべて解析と一致する結果が得られた。

 

今回は魔術師呪文を使えるロードを用意したが、敵のACを上げるだけならアイテムで代用してもいいだろう。

・なぜ今頃検証したか

実のところ、ACが機能していない疑惑について発売から20年以上の2008年まで全く知られていなかったわけではなく、気づいていた人もいたらしいのだが、僕は全く気付いていない側だった。
だから11年前に解析サイトを見つけた僕は、上記とだいたい同じ検証をすぐに行っている。そのときはファミコン実機だったが、味方のACが効いていないことも敵のACが計算に使われていることも当時確認しているのである。
そして、それっきりやりなおすこともなかった。

いまさら検証したきっかけとしては、誤った情報が流れていたためだ。
ひとつは『「みをまもる(PARRY)」時は正常な処理がされている』という情報だが、そんなことはない。上記のマーフィーでの検証は全部「みをまもる」でやったが、どう見ても防具も防御魔法も影響していない。
なんでこんな珍説が出てきたのだが、これはNES解析にある「PTキャラが行うPARRYには意味がある(打撃攻撃回避率が若干上がる)」という記述を単に誤認したものと思われる。もちろん一度も検証もせずに…
NES解析の記述の通り「みをまもる」自体はどうやら正常に働いており、回避率を高める効果があるのだが(別の検証で確認)、それは「みをまもるの時はACが正常に参照される」という意味ではない。

もうひとつは、「敵の位置によって参照しているACが違う」という新説である。
1番目の敵は、狙ったキャラクターではなく、1番目のキャラクターのACを参照して命中率を決める。3番目の敵は3番目のキャラクターのACを見ている」という。つまり味方側のACは無意味ではないが、間違ったキャラクターのACを参照している、というのだが…
これも上記マーフィーの検証で否定される。
B1のマーフィーズゴーストは常に1グループ目の1番目であり(これは別の検証とも総合しての判断)、一人パーティで検証すればこの新説のキャラクターに対応しているが、事実としてACの影響は確認できなかった。
また解析を信じたプレイヤーが6人全員全裸にした場合、新説の通りなら攻撃を食らいまくるはずであるが、11年の間にそのような報告がされたことはない。

このように解析に反する異説が出てきていたのだが、マーフィーで検証する限り解析の正しさを肯定する結果しか得られていない。
僕は11年前に簡単な検証をしていたため、これら異説の誤りにはすぐ気づけたのだが、おかげで11年前に棚上げにしていた課題を思い出すことになったのである。
「味方ではなく敵のACが影響している」で説明が完了するのは、「味方が誰も毒を受けていない状態で、1グループ目の6番目のモンスターまで」という条件でのみ成立し、この範囲外はこの限りではない。

付記:『「みをまもる」時は正常な処理がされている』と検証もせずに「言語道断なバグ」とまで言い切っていたのはゲームカタログというクソサイトである。
だがこの記事を書いた数ヵ月後に『『「みをまもる」時は正常な処理をしていると言われる事があるが、実際には「みをまもる」時も味方のACは機能していない。』とまるで他人事のように修正されているのを確認した。そのように言っている人を数人観測したのが記事を書いた動機のひとつだが、履歴を探った結果と検索順から考えても、それらは私が読んでいなかったゲームカタログの記述が原因であろうと判断している。
検証の上で修正したのか、本記事の検証などを鵜呑みにしてるのかは知らないが(私が大嘘を書いていないと確認したのか?)、外部に責任を押し付けるような書き方をするくらいならそこの記述丸ごと抹消したほうがまだいい。

・命中率計算式

Wizardry(NES) 解析 - 敵からの打撃攻撃に掲載されている式を以下に引用。

>A = 19 + (PARRYボーナス) - P - (モンスターLV)
>B = A - (攻撃者のAC)
>命中判定値は:
>19 <= B ならば 19
>0 <= B < 19 ならば B
>-36 <= B < 0 ならば 0
> B < -36 ならば
>  A < 0 ならば 0
>  A >= 0 ならば 19
>(命中率) = (19-(命中判定値)) / 20

この複数の式を省略して、単位をパーセントにして書き直すと、

敵の命中率 ={敵のLV + 敵のAC + P - 「みをまもる」ボーナス}×5%

※ただし命中判定値の制限より、最小は0%で最大は95%になる。
※元の式だとB < -36かつA >= 0の場合に妙な判定が起きてるように書いてあるが、めったに起きない状況なので今回は省略。検証もしてない。

命中はTRPGのように20面ダイスで判定されているらしい。リルガミンサーガ公式ガイドブックに掲載されている式ともかなり似ており、ACに1の差があると命中率に5%の差が発生することになっている。
ただしファミコン版は敵のACで。
たぶんリルガミンサーガまで式が公開されたことはなかったため、実際判定が正常かどうかなどわからなかった。TRPGの式をベースにしているっぽいが、ほとんどのユーザーはAC1の差がどれだけなのかなど知らなかったのである。

さて上記の式のPを無視した場合、敵の命中率の基本値は(敵のLV + 敵のAC)×5%。
マーフィーズゴースト(レベル10、AC-3)なら(10 - 3)×5で命中率35%。
それに対し「みをまもる」には10%の効果があるので、みをまもるに対するマーフィーの命中率は25%と計算される。

問題は式の途中に出てきた「P」という変数である。NES解析によるとこれは敵の位置によって変化しており、B1のマーフィー(位置は1グループ目の1番目、解析に合わせて以下(1,1)と表記)の場合、Pは「PT1人目のPOISON値」であり、1番が毒を受けていると上がる。
この「P」は大きいほど敵の命中率が上がる。

・「みをまもる」の影響

Pを調べる前に、「みをまもる」の影響を調べておく。
最も命中率の低い敵はウィルオーウィスプ(レベル10、AC-8、命中率10%)。こいつは物理攻撃しかしてこず、命中率の低さが検証に適している。

AC10の3人パーティで、B10で「ウィルオーウィスプが1匹だけで登場したもの」を対象に、みをまもる、まもらないを各100回試行した結果が以下の通り。

条件 命中率(実測)
1.3人で「みをまもる」 0%
2.3人で「のろいをとく」 12%

マーフィーの検証より試行回数を減らしたが「みをまもる」の効果は10%とする解析と近い結果。
命中率0%が記録できたのも解析通り。リルサガ公式ガイドによると最小でも5%は残ることになっているのだが、ファミコン版はそうではない。
通常のウィルオーウィスプは「みをまもる」に対し絶対に攻撃を命中させることができない。少なくとも位置(1,1)のウィルオーウィスプについては、防御する限り永遠に当ててくることはない。
この現象は以下の検証で役立つため、先に検証した。

・毒の影響

NES解析によれば位置(1,1)の敵の命中率は「PT1人目のPOISON値」の影響を受ける。POISON値は健康なら0で、通常の毒を受けると1になる。
ところが宝箱の毒針を受けた場合のみ+1になる。打撃で毒を受けても、ガス爆弾で毒を受けても固定の1になるが、毒針の場合だけ2,3とどんどん上げていくことができる。Wizardry(NES) 解析 - 宝箱罠の解説の通りだが、Apple解析でも同様の記述であり、正しい移植らしい。
POISON値はHP50未満のときに受ける毒ダメージになる。HP50以上は割合ダメージで影響なし。
普通のプレイで毒を放置したまま次の毒針を受ける状況などほとんど考えられないが、意図的に起こすのはさほど難しくない。

さてNES解析によると(1,1)の敵は一人目の毒状態を見ているという。先ほどの計算によると「POISON値1だと命中率が5%上がる」ということになるらしい。通常の敵でそれを確認するのは難しいが、命中率0%のウィルオーウィスプなら話は別だ。
先ほど同様、1匹で出現したウィルオーウィスプに対し3人パーティで、一人が毒を受けた状態で検証を行った。試行回数は各100回。

条件 命中率(実測)
1.一人目が毒(POISON値1)で、みをまもる 8%
2.一人目が毒(POISON値4)で、みをまもる 24%
3.二人目が毒(POISON値1)で、みをまもる 0%

  

通常ガードに攻撃を当てられない(1,1)のウィルオーウィスプだが、パーティ1人目が毒を受けていると「みをまもる」でも低確率で命中するようになる。毒が強ければさらに命中率が上がる。毒ポイント1につき5%の命中率という解析は、たぶん正確だろう。
だが毒を受けているのが2人目のときは影響がない。NES解析によれば2人目の毒から影響を受けるのは1グループ目の2番目(1,2)のモンスターだ。つまりウィルオーウィスプが2匹で登場した場合は2人目の影響を受けるはずである。
敵1グループの6番目までは、それぞれが冒険者の6人目までの毒を見ているという。先ほど紹介した「敵の位置により違う冒険者のACを参照する」という誤った説明と理屈が似ているようなので、これを間違えたものかもしれない。

毒の影響があることは確認できたが、実戦で毒2以上を維持することなどないし、まず気にすることはないだろう。
…ところで、敵の7番目以降はどうなっているのか?
それも11年前の時点で全部解析に書いてあったのだが、僕はこの先のことを完全に忘れていた。恐ろしい数字が書いてあることなど気づかずに…

・500パーセントを超えているかもしれない

NES解析によると(1,7)から(2,3)のモンスターが得る補正値Pは「0x60 + PT〇人目の訓練所内ID」である。訓練場のIDは1から20だろうか。しかし問題なのは「0x60」のほうで、これは「16進数の60」、つまり10進数で96という意味らしい。
……???
つまり96ポイント×5% = 480%相当の命中補正がかかる???

そんなバカな。調べる必要がある。
2グループ目で物理攻撃を主とする敵は何種類かいるが、会いやすさ、強さ、1グループ目が無害であることなど考慮し、今回はB6のレベル6ニンジャ(レベル6、AC6で命中率60%。名前に反してクリティカルヒットを持たない)を選んだ。
B6で「レベル5プリーストかレベル7メイジの後続のレベル6ニンジャが3体以内で登場した場合」を対象に、やはり「みをまもる」で耐える方法で検証する。
解析の通りだとすると2グループ目の位置(2,1)(2,2)(2,3)の3体のレベル6ニンジャはパーティの4~6人目の訓練場IDを参照するらしいので、後衛のIDを変えて検証する。
試行回数は50回。
ただしレベル6ニンジャは攻撃回数が3回なので、命中回数も記録しておく。50回の行動で150回攻撃したものとして、そのうち何回命中したかで命中率を実測した。

条件 命中率(実測)
後衛の訓練場IDが1,2,3 96.0%
後衛の訓練場IDが18,19,20 95.3%
後衛が誰もいない(3人パーティ) 54.0%

 

6人パーティだとめっちゃ当ててくる。
ACが効いているのかどうか、解析が合ってるのかどうかというレベルではなかった。ほとんどの攻撃が3回ヒット。
4~6人目に誰か冒険者がいると該当のモンスターの命中率が激増する。つまり、ほとんどの冒険者2グループ目の3番までは命中率が95%になる
これは「みをまもる」も装備もレベル6ニンジャ自身の能力も関係なく、とにかくカンストして95%になるということである。
おそらく内部では解析通りレベル96相当の補正値Pを受けて、命中率が540%以上になってるのだと思うが、本当に480%なのかどうかは確かめる術もない。内部で105%だろうと1000%だろうと結果は同じであり、確かなのは解析と矛盾しない超補正がレベル6ニンジャについているということだけだ。

いや、これは…
「ACが効いてない」では明らかに説明が不十分で、「敵の位置によって補正がかかり、超命中率の攻撃をしてくるものがいる」という現象が同時に起きている。これは既にACバグと呼ばれるものとは別個のものだ。
相手にしてるのがレベル6ニンジャだから大したことはないが、2グループ目のレベル8ニンジャとかライフスティーラーとか、普通に見かけるモンスターでもかなりマズいことが起きているはずだ。
ACバグは20年気づかれなかった、いや気づいていた人もいたと言われるが、その正確な解析が出てからさらに11年も経ってるのに、こちらの現象について全く言及が足りていない。
僕も気づかなかったわ。
「ACバグ」という呼び方自体も解析サイトが言い始めたものではないのだが、この補正Pへの考えが足りていない呼称だったのではないだろうか。

超補正が大きすぎるため、解析で示された訓練場IDも実際は無関係。ただし、4~6人目に誰もいない場合はこの補正がつかないので、キャラクターの何かを参照しているのは確かなようだ。
なお1グループ目のレベル6ニンジャについても比較したが、補正なしの命中率については想定通り50%程度であった。
前衛を全滅させてレベル6ニンジャを1グループ目に動かした場合も、超補正は消えてやはり50%程度に落ち着く。敵によっては位置を動かすことも意識したほうが良いかもしれない。

解析の通り(1,7)(1,8)(1,9)も同様の超補正を受けていると思われる。B4でボーリングビートル(レベル5、AC3、命中率40%)が7匹登場するパターンを探して検証した。(7匹以上出現して、特殊能力を持たず、逃げないという条件を満たす敵はボーリングビートルしか存在しない)
まず7匹いる状態で「みをまもる」で命中率を実測し、次に物理攻撃で6匹倒して7番目だけを残して再度検証する。「ウィザードリィのすべて」94ページによると、ファミコン版1の場合、冒険者の物理攻撃は敵を前にいるものから順番に倒していくらしいので、最後に残るのが7番になるはずだ。(ファミコン版2だと冒険者の位置によって狙う敵が変わるという)

条件 命中/攻撃回数 命中率(実測)
7匹いる状態 39 / 108 36.1%
7番だけ残した状態 93 / 100 93%

ボーリングビートルが7匹いる場合、実際に行動するのは4~7体である。敵第 1 グループの 5~9 体目は 5/10 の確率で攻撃しないとするNES解析の記述と一致。検証の結果、予想通り7番に超命中率の個体がいたが、7匹だとその行動確率は50%なので、全体の確率にはさほど影響しない。
なお7匹目だけが残った状態だと確実に行動してくる。行動確率に影響するのは現在の人数であり、ずっとサボってるわけではない。

・モーリスについて

NES解析によるとモーリスのAC上昇値は3。これも上記マーフィーの命中率の上昇量(3回で約45%上昇)から確認できたと言っていいだろう。
モーリスのAC上昇値については「ウィザードリィのすべて」でも4となっているし、説明書でもディルトの2倍(ディルトが幾つかは書いてない)となっているが、実際は1.5倍である。Wizardry1/Apple/解析メモにも同様の記述があり、説明書が不正確なこと自体も忠実に移植されているっぽい。
またリルサガ公式ガイドも4になっているが、リルガミンサーガでは実際4なのだろうか?これは調べていない。
得物屋24時間の呪文リストでも4としている。得物屋も何らかの解析でデータを取得しているようなのだが、魔法の効果は何を参考にしたものかは、わからない。4の機種もあるのかもしれない。

ディルトやモーリスをかけると敵の命中率も上がってしまうわけだが、敵の回避率が低下する効果は正常に機能している。マーフィーやウィルオーウィスプのように物理ダメージが小さくACが低いモンスターであれば、モーリスを使う価値はあるだろう。

ただグレーターデーモンの養殖時にはあまり意味がない。モーリスは一見するとグループ単位に作用する魔法なのだが、ACは個体ごとに管理しているらしく、今回初めて気づいたが増援個体のACは初期値に戻っているようだ。増援にもモンティノの状態は引き継ぐくせに…
グレーターデーモン(レベル11、AC-3、命中率40%)は物理攻撃をしてくる確率自体は低いが、攻撃回数が5回もあるため、殴ってきた場合はだいたい1回は当たり(「みをまもる」でも完全回避率は16%程度になる計算)、毒や麻痺もたいてい食らう(命中回数と毒などを食らう確率は無関係なんだと)。
だからグレーターデーモンの場合はモーリスで命中率が少々高くなっても逆にさほど影響がないのだが、それ以前に養殖作業中にモーリスのかかった個体は淘汰されていき、維持されない。むしろ増援を呼ばせず短時間で倒したい場合にモーリスを使うと良いだろう。
しかしグレーターデーモンが一度でも7匹以上になると、ボーリングビートルの検証の通り命中率の高い個体が発生してしまうと思われるので、6匹以内の壁は守ったほうがいいかもしれない。

・レトロフリークについて

今回の検証をレトロフリークでやっているのは勘弁してもらいたい。ソフト自体は11年前に実機と検証したものと同じカセットで、おそらく挙動も変わらないと思うが、「ウィザードリィ」は実はレトロフリーク公式で動作に問題のあるゲームとして挙がっている
>ボタンの割り当てで設定した連射が動作しません。
だと。これはレトロフリーク自体の問題であり再現度に問題はないようには見える。

レトロフリークのパッチ機能は当然使っていないし、チートも影響がわからないので使っていない(使い方も調べてない)が、レベル上げや敵の選定にクイックセーブ機能はかなり使用した。ただし、データ検証中のクイックセーブは遠慮した。
本作の乱数はリアルタイムで動いているタイプで、戦闘中ならメッセージを送るたびに瞬間瞬間で計算し直しているようである。戦闘中にクイックセーブして再開すると、結果は変動する。
RPG INSTITUTEによると、本体の種類によって乱数が変化するということもあるらしい。レトロフリークの乱数が実機と同じかは知らないが、「ウィザードリィ」の場合は乱数がリアルタイムで動いており、仮に乱数の初期値が違っても、電源技のようなものはそもそも使えず、人間が操作する範囲では影響しないと思われる。たぶん。

検証に際してクイックセーブを使った場合、たとえターンの途中だろうと結果は変動する。だから検証途中でクイックロードしても状況再現されることはなく、結果のランダム性は維持できると思うが、念のため一度の検証中では使用しないことにした。マーフィーとはきっちり通しで200ターン検証しているし、レベル6ニンジャの攻撃も回復しながら50回受け切っているということです。
もちろん「みをまもる」を使っていないターンは命中も回避もカウントしていない。
なお試行回数が全然足りない問題は別で、レベル6ニンジャの推定命中率は50%だと書いたが、一度だけ試行50回で70%を観測したこともある。たぶん誤差だと思うが、想定外の補正がかかっていた可能性も否定はできない…

・リルガミンサーガ公式ガイドブックの式

リルガミンサーガ公式ガイドブックの90ページに命中率に関わる「攻撃スキル」という数値の計算が書いてある。
モンスターの攻撃スキルは以下の計算だという。

攻撃スキル=20 -【キャラクターの現在のAC 】-【モンスターのレベル 】+2(ただしモンスターの行動が呪文攻撃のときに加算)

この数値が低いほどモンスターの命中率が上がる。
要するにモンスターの打撃については冒険者のACが1下がると命中率が5%下がり、モンスターのレベルが1上がると命中率が5%上がるという結果になるようだ。
しかしモンスターの行動が呪文攻撃のときに2加算(つまり、10%命中率が低下する)とはなんだろう?そもそもモンスターの行動が呪文攻撃だったら打撃はしてないはずだが…
「攻撃を食らうキャラクターが呪文を唱えてると回避率が下がる」なら理解しやすいが。
調べてないので実際のところはわからない。

この90ページはさらに「この値が低いほどプレーヤーが有利」と逆のことが書いてある。モンスターのレベルが高いほどモンスターの攻撃スキルが小さくなる=命中率が上がるのだから、低いほうが不利なはずである。
とりあえずこのページが不正確なことは確かだが、「呪文行動による命中率の変化」という現象は、機種によっては存在するのかもしれない。
あるいはこれがNES解析の示した謎補正「P」の本来の数値?

またこのページ「身を守る」の効果が書いてない。リルサガでは効果がないのだろうか、書き忘れただけだろうか?
これも調べてない。20ページには「身を守る」は直接攻撃のダメージを軽減するとは書いてある。

・解析と合わない現象

ほとんどの現象は解析の正しさを示すばかりであった。新しい発見があるとすれば、単に僕がその解析に気づいてなかっただけである。
しかし解析と説明が合わない現象も発見した。

Wizardry(NES) 解析 - 戦闘システム全般には
>グループが全滅したりグループ内の敵が死亡したりした場合も、敵を「前に詰める」ような処理は行われない。つまり、敵グループの番号は常に不変であり、一度出現した敵のキャラ番号も常に不変である。
とあるが、これは正しくなかった。
ボーリングビートルの挙動から、(1,7)のボーリングビートルは前の6番までを倒しても7番のままであることが確認できたが、レベル6ニンジャの場合はこうならなかった。1グループ目が全滅した場合は2グループ目のレベル6ニンジャは1グループ目に移動し、上記の超補正も消えることを確認した。
また、ポイゾンジャイアントの後続の(2,1)のウィルオーウィスプについても、ポイゾンジャイアント撃破後は(1,1)になり、1番目のキャラクターの毒で命中率を約5%上げる現象が確認できた。
NES解析の通りグループ内の敵が死亡しても番号は変わらないが、グループごと全滅した場合は「前に詰める」が起きている。僕が何か読み飛ばしてるのでなければ、ここは間違っている。

2グループ目の検証でレベル6ニンジャを選んだ理由はこのため。グループ番号が維持されるなら、4グループ同じものが出てくるマーフィーズゴーストで2グループ目だけを残して検証できたのだが、それはできなかった。

・ACは無意味ではない

味方のACが敵の命中率に影響しないことは十分示せたと思うが、全く何も使われていないのかというと、実は使われている箇所がある。
Wizardry(NES) 解析 - 敵への打撃攻撃で、3グループ目以降の倍打のフラグに味方のACが関わる箇所がある
ただ、この説明が非常に難しい。だからまず結果だけを示す。
4人目のACが奇数だと、前衛3人全員がハイニンジャ(4,1)に対して倍打が発生する。偶数だと発生しない。(AC1から10まで確認済み)

 

また、1人目のACが7だと3列目のマーフィーズゴースト(3,1)に倍打が発生する。

 

どういうことなの…

まず倍打の判定について。ファミコン版はバグっていて倍打判定の攻撃者が誰であるかは影響していない。
>結果的に、PT内の n 人目が位置 (1,n) にいるタイプ0~7の敵を攻撃する場合は本来の(制作者が意図していたであろう)倍打判定が行われることになる。
この説明の通り、1人目がメイジマッシャーを装備すると(1,1)の魔術師系に対する倍打が発生するのだが、「1人目が装備していると(1,1)に対するフラグが立つ」ということであり、このとき2人目と3人目はメイジマッシャーを装備していなくても同様に魔術師への倍打が発生する。
倍打フラグが立つ条件が誰かによって満たされている場合、全員に倍打フラグが立つ。

倍打フラグに装備が反映されるのは1グループ目の6人目までであるという。(4,1)にいるハイニンジャの場合、NES解析によると1byte目が「PT4人目のAC」、2byte目は「PT4人目のPOISON値」が倍打フラグとして使われる。これが2byteのモンスタータイプ別ビットマスクと一致すると倍打が成立する。
ひとまずPOISON値については忘れる。「4人目のAC」が奇数だとハイニンジャ(戦士系)の倍打フラグであるbit8を成立させる、どういうことか?

僕の理解で書くが、1byte(8bit)は8桁の2進数で、「00000000」から「11111111」の256個。
4人目のACが9の場合、9は2進数だと「00001001」となる。この右端の1が解析の言う「bit8」に対応するらしい。ここが1になるACだと、ハイニンジャへの倍打フラグが成立する。
つまりACが奇数なら右端が1になるので、ハイニンジャに倍打が発生するようになる。
たぶんこれであってると思う。

 

同様にマーフィーズゴースト(3,1)の場合は、2byte目のほうが1人目のACを参照する。
AC7なら「00000111」で、bit2(右から3番目)が不死系のフラグで、倍打が成立する。おそらく1人目のACが4~7なら(3,1)の不死系への倍打になるはず。
3列マーフィーを探すのが面倒でAC7しか確認してないので残りは誰か調べてみてほしい。

これは検証してないが、たぶんAC0が「00000000」でありAC-1が「11111111」である。ACを-1にしておけば8種族へのフラグが立ち、倍打条件をいささか満たしやすくなるんじゃないかなあ、たぶん…
そもそも#1で3グループも敵が出ること自体が少なく、その中の1匹や2匹にフラグが立ってどうなるんだって感じだが…
なんでか知らないが対ハイニンジャに限っては、十分に実用性のある裏技になっていることがわかった。
ACに意味はあった。これからはACが無意味だと言ってる人には積極的にマウントを取っていこう。

なお、NES解析には厳密に書いてないのだが、このフラグに使われるACは戦闘中に魔法で変化させたものではなく、戦闘開始時の装備によるものを参照している。カルキなどを使ってACを調整してもフラグには影響しない。つまり防御魔法はこのフラグにおいても無意味であると考えられる。

 

※倍打フラグについては過去に全く検証がなかったわけではなく、11年前の2chで少し検証した書き込みがあったので、それを参考に改めて調査しました。正直僕の知識だけでは解析の意味がわからんかった。

・訓練場ID

 

解析に訓練場IDが関わる箇所があったので、並び順がわかりやすいように全員改名してもらったが、どうやらあまり意味はなかった。
じゅーすぃ~