ページ 11

【解決済み】女神転生の「貫通属性」を作成したい

Posted: 2024年11月01日(金) 04:00
by deal
お疲れ様です。
色々考えてみたのですが、うまくできなかったので相談させてください。
(RX_T_IgnoreAttributeDefenses.jsがそれっぽいのですが動作せずよくわかりませんでした)

女神転生における貫通属性ですが…
例えば炎属性であれば炎耐性を持っている相手には軽減されてしまいます。
しかし、貫通炎属性は相手が炎属性の弱点を持っている場合はそのまま弱点時の高い倍率でダメージを与え、
炎耐性を持っている相手には軽減されずにそのまま100%のダメージを与える、という完全上位互換の属性になります。

実現ですが、例えば炎属性と貫通炎属性の2つを作ることを考えていました。
敵の作成で、貫通炎耐性について弱点なら150%、それ以外は全て100%で設定すればいいのですが、
敵から味方が攻撃される場合だと成立しない場合があることに気づきました。
炎属性が150%の弱点を持っているアクターがいるとして、炎耐性を装備などで上げて仮に50%になったとき、貫通属性が150%で炎耐性は50%のようになってしまいます。かといって、貫通炎耐性も炎耐性に比例して同じように上げてしまうと必ず耐性が100%を下回ってしまうケースが出てきます。

何かい良い方法はないでしょうか。宜しくお願い致します。

Re: 女神転生の「貫通属性」作成したい

Posted: 2024年11月02日(土) 02:21
by 剣崎 宗二
要件を整理すると

「貫通属性を持っているスキルは、属性有効度計算に於いて必ず100%以上の有効度が保証される」

と私は理解しましたが、宜しいでしょうか?

若しもそうであれば、以下を新規プラグインとして入れてみてください。

コード: 全て選択

(() => {
    const tst_Game_Action_prototype_calcElementRate = Game_Action.prototype.calcElementRate;
    Game_Action.prototype.calcElementRate = function (target) {
        const baseRate = tst_Game_Action_prototype_calcElementRate.call(this, target);
        if (this.item().meta.pierce_element) {
            return Math.max(baseRate, 1);
        } else {
            return baseRate;
        }
    };
})();
貫通属性とするスキルは通常の属性を設定した上で、メモ欄に
<pierce_element>
としてみてください。

Re: 女神転生の「貫通属性」作成したい

Posted: 2024年11月02日(土) 14:11
by deal
剣崎 宗二 様

お疲れ様です。
わざわざプラグインを作成していただいて恐縮です。
仕様・動作ともに問題ありませんでした。

ありがとうございました。非常に助かりました!