【3DS】新・世界樹の迷宮 攻略・スキル検証スレ

このエントリーをはてなブックマークに追加
216名無しさん@お腹いっぱい。
やっと追いついた。

プログラマ的な考察

● マスター系スキルを通常とグリモア両方同時に取得している場合について

プログラムを作った経験のある方ならわかると思いますが、これはありがちなバグです。
デバッグ作業で見落とされているのが不思議なくらい。
結論から言うと、「Lv10+グリモアLv1」と「Lv10+グリモアLv10」は
同じダメージになると推測されます。

少し詳細な解説。
このように複数の同じスキルのレベル違いを持つような場合、レベル参照用のテーブルを
作るのが一般的です。
毎回レベルを確認するために全てのスキルを調べるのは処理が重いですから。
AというスキルのLv10とLv1のスキルを取得しているなら、テーブルのAの欄にLv10と
書き込んでおいて、計算時などには元のスキルではなくテーブルの方を参照するわけです。
これなら装備変更時や「グリモア+2」の効果が発生した時に1度だけスキルの重複チェックを
しておくだけで済みます。毎回ダメージ計算ごとに重複チェックをする必要がありません。
この場合、ダメージ計算の時にもテーブルの方を参照するべきなのですが、
(おそらく)過去のダメージ計算ルーチンを流用した結果、一部にテーブルに対応して
いない部分が残ってしまったと思われます。
従来の計算式であれば、計算時に全パッシブスキルと効果を発揮しているバフ/デバフ効果を
全てチェックし、計算していたはずです。
この式をテーブル対応に書き換えた時に、レベル参照の部分だけテーブルを見るように
書き換えたけれど、全パッシブをチェックしてしまう部分は書き換え忘れたのです。
おかげで同じマスタースキルを2度参照することになり、しかもレベルだけは
テーブル参照による最大レベルになってしまいました。
ちなみにバフ/デバフ効果は同じものが複数かからない仕様なので、全チェックでも
問題なく動作します。

以上は推測でしかありません。データも何もありません。
ですが、ありがちなバグです。99%くらいの確率で正しい推測になっていると思います。