/*:ja * @plugindesc v1.05 (要YEP_DamageCore) 戦闘全体のダメージ式をより普遍的にし、ATK-DEF式の欠点を補います。 * @author Yanfly Engine Plugins * * @param ---物理--- * @text ---物理--- * @default * * @param Positive Physical Rate * @text 正の物理乗数 * @parent ---物理--- * @desc 計算された防御力が正の値の場合、物理攻撃の乗数です。 * @default value= 100 / (100 + armor) * * @param Negative Physical Rate * @text 負の物理乗数 * @parent ---物理--- * @desc 計算された防御力が負の値の場合、物理的攻撃の乗数です。 * @default value= 2 - (100 / (100 - armor)) * * @param Physical Base Armor * @text 物理基本防御力 * @parent ---物理--- * @desc 物理的な基本防御力計算です。 * @default target.def / 2 * * @param ---魔法--- * @text ---魔法--- * @default * * @param Positive Magical Rate * @text 正の魔法率 * @parent ---魔法--- * @desc 計算された防御力が正の値の場合、魔法攻撃の乗数です。 * @default value= 100 / (100 + armor) * * @param Negative Magical Rate * @text 負の魔法速度 * @parent ---魔法--- * @desc 計算された防御力が負の値の場合、魔法攻撃の乗数です。 * * @default value= 2 - (100 / (100 - armor)) * * @param Magical Base Armor * @text 魔法基本防御力 * @parent ---魔法--- * @desc 魔法の基本防御力計算です。 * @default target.mdf / 2 * * @param ---必中--- * @text ---必中--- * @default * * @param Positive Certain Rate * @text 正の必中の乗数 * @parent ---必中--- * @desc 計算された防御力が正の値の場合、必中攻撃に対する乗数です。 * @default value= 100 / (100 + armor) * * @param Negative Certain Rate * @text 負の必中の乗数 * @parent ---必中--- * @desc 必中攻撃の乗数です。計算された防御力は負の値です。 * @default value= 2 - (100 / (100 - armor)) * * @param Certain Base Armor * @text 必中の基本防御力 * @parent ---必中--- * @desc 必中攻撃の防御力計算です。 * @default 0 * * @help * 翻訳:ムノクラ * https://fungamemake.com/ * https://twitter.com/munokura/ * * =========================================================================== * 導入 * =========================================================================== * * このプラグインはYEP_DamageCoreを必要とします。 * プラグイン管理のYEP_DamageCoreの下に * このプラグインがあることを確認してください。 * * 攻撃者と敵の両方にとって、 * 戦闘全体の数字をより普遍的にするためのダメージバランサーとして機能し、 * ATK - DEFの式にある欠陥を乗り越えます。 * * =========================================================================== * 防御力スケーリング * =========================================================================== * * 攻撃対象が持つ防御力に対してダメージを調整するために、 * ダメージ計算式から"b.def2"や同様の計算を排除することを可能にします。 * 以下は、 * 正の防御力と負の防御力の両方に対する防御力スケーリング式です。 * * 正の防御力 負の防御力 * * 100 100 * Rate = ------------- Rate = 2 - ------------- * 100 + armor 100 - armor * * Armor Scaling がダメージに与える影響については、 * FlyingDreamの Armor Scaling Calculator にアクセスしてください。 * * http://yanfly.moe/tools/armorscalingcalculator/ * * 簡単に参照するために、1,000個の基本ダメージが * どのように影響を受けるかについての表がこれです。 * * Armor Level Rate% Damage Armor Level Rate% Damage * 1 99.01% 990 -1 100.99% 1,010 * 2 98.04% 980 -2 101.96% 1,020 * 3 97.09% 971 -3 102.91% 1,029 * 4 96.15% 962 -4 103.85% 1,038 * 5 95.24% 952 -5 104.76% 1,048 * 6 94.34% 943 -6 105.66% 1,057 * 7 93.46% 935 -7 106.54% 1,065 * 8 92.59% 926 -8 107.41% 1,074 * 9 91.74% 917 -9 108.26% 1,083 * 10 90.91% 909 -10 109.09% 1,091 * 25 80.00% 800 -25 120.00% 1,200 * 50 66.67% 667 -50 133.33% 1,333 * 75 57.14% 571 -75 142.86% 1,429 * 100 50.00% 500 -100 150.00% 1,500 * 150 40.00% 400 -150 160.00% 1,600 * 200 33.33% 333 -200 166.67% 1,667 * 250 28.57% 286 -250 171.43% 1,714 * 300 25.00% 250 -300 175.00% 1,750 * 350 22.22% 222 -350 177.78% 1,778 * 400 20.00% 200 -400 180.00% 1,800 * 450 18.18% 182 -450 181.82% 1,818 * 500 16.67% 167 -500 183.33% 1,833 * 550 15.38% 154 -550 184.62% 1,846 * 600 14.29% 143 -600 185.71% 1,857 * 650 13.33% 133 -650 186.67% 1,867 * 700 12.50% 125 -700 187.50% 1,875 * 750 11.76% 118 -750 188.24% 1,882 * 800 11.11% 111 -800 188.89% 1,889 * 850 10.53% 105 -850 189.47% 1,895 * 900 10.00% 100 -900 190.00% 1,900 * 950 9.52% 95 -950 190.48% 1,905 * 999 9.10% 91 -999 190.90% 1,909 * 9,999 0.99% 10 -9,999 199.01% 1,990 * 99,999 0.10% 1 -99,999 199.90% 1,999 * 999,999 0.01% 0 -999,999 199.99% 2,000 * 9,999,999 0.00% 0 -9,999,999 200.00% 2,000 * * 2の防御力でデフォルトの基本防御力式を使用すると1の防御力に等しい。 * 200の防御力で、バトラーは50%のダメージしか受けないことを意味します。 * 999の防御力の時、バトラーは16.67%以上のダメージを受けるでしょう。 * 防御力スケーリングのないこれらの値では、 * ダメージはその問題で完全に元に戻すことができます。 * 防御力スケーリングが長期的な均衡を維持するために * どれほど有効であり得るかを示すためのものです。 * * =========================================================================== * 防御力減少と防御力貫通 * =========================================================================== * * ダメージに防御力スケーリング率が適用される前に * アーマーレベルを変更することができる様々な修正があります。 * 防御力は4つの主なステップを経て、 * それらは以下の通りです。 * * 1. 防御力 減少, 固定値 * 2. 防御力 減少, 割合 * 3. 防御力 貫通, 割合 * 4. 防御力 貫通, 固定値 * * ステップ1 防御力 減少, 固定値 では、 * 対象の防御力はある値だけ減少します。 * 相加的にスタックします平らな防御力の減少は * 対象の防御力はゼロ以下です。 * 例えば、防御力が10の敵が防御力が25減少し、 * 敵は- 15防御力を持つようになります。 * 防御力減少は攻撃者ではなく対象によって提供されます。 * * ステップ2. 防御力 減少, 割合 では、 * 目標の防御力に割合(100%- 記載されている値)を掛けます。 * 防御力の減少率は乗法的にスタックし、 * 対象の防御力が0以下の場合は無視されます。 * 防御力率の減少は、 * より高い防御力を持つ対象に大きな違いをもたらします。 * 例えば、40%の防御力減少率では、 * 200の防御力を持つ対象は80を失いますが、 * 50の防御力のみを持つ対象は20を失います。 * * ステップ3. 防御力 貫通, 割合 では、 * 対象の防御力に百分率(100% - 表示されている値)を掛けます。 * 防御力貫通率は乗法的に重なり合い、 * 対象の防御力が0以下の場合は無視されます。 * 防御力の貫通率は、より高い防御力を持つ対象に大きな違いをもたらします。 * 例えば、防御力貫通率が40%の場合、 * 防御力が200の対象は80が少ないと見なされ、 * 防御力が50の対象は20が少ないと見なされます。 * 防御力貫通力の値は攻撃者によって提供され、 * 標的ではありません。 * * ステップ4. 防御力 貫通, 固定値 では、 * 対象の防御力はダメージ計算のためにある量減少したものとして扱われますが、 * 0以下に減少させることはできません。 * 防御力貫通力の値は攻撃者によって提供され、対象ではありません。 * * =========================================================================== * メモタグ * =========================================================================== * * 防御力スケーリング率と属性を調整するために * これらのメモタグを使うことができます。 * * スキルとアイテムのメモタグ * * スキル/アイテムに、 * 対象の防御力レベルをxだけ減少させます。 * 他の全てのものの上に最初に計算される。 * * * スキル/アイテムに、 * 対象の防御力レベルをx%減少させます。 * 2番目に計算されますが、 * 防御力レベルが0より小さい場合は無視されます。 * * * スキル/アイテムに、 * 対象の防御力レベルをx%減少させます * (ただし、0を超えません)。 * 3番目に計算されます。 * * * スキル/アイテムに、 * 対象の防御力レベルをxだけ減少させます * (ただし、0を超えないようにします)。 * 最後に計算されます。 * * * 個々のスキル/アイテムの防御力スケーリング過程を回避できます。 * * * アクター、職業、敵、武器、防御力、ステートのメモタグ * * このアクターを物理的スキル/アイテムで対象とした時、 * x防御力を失う。 * 最初に計算されます。 * * * このアクターを魔法のスキル/アイテムで対象とした時、 * x防御力を失う。 * 最初に計算されます。 * * * このアクターを特定のスキル/アイテムで対象とした時、 * x防御力を失う。 * 最初に計算されます。 * * * このアクターを物理的スキル/アイテムで対象とした時、 * x%防御力を失う。 * 2番目に計算されます。 * * * このアクターを魔法のスキル/アイテムで対象とした時、 * x%防御力を失う。 * 2番目に計算されます。 * * * このアクターを特定のスキルやアイテムを対象とした時、 * x%防御力を失う。 * 2番目に計算されます。 * * * このアクターが物理的スキル/アイテムを使った時、 * 対象にx%防御力を失うようにさせます。 * 3番目に計算されます。 * * * このアクターが魔法のスキル/アイテムを使った時、 * 対象にx%防御力を失うようにさせます。 * 3番目に計算されます。 * * * このアクターが対象にx%防御力を失うようにさせます。 * 物理的なスキル/アイテム3番目に計算されます。 * * * このアクターが物理スキル/アイテムを使った時、 * 対象がx防御力を失うが0アーマーを下回らないようにします。 * 最後に計算されます。 * * * このアクターが魔法のスキル/アイテムを使った時、 * 対象がx防御力を失うが0アーマーを下回らないようにします。 * 最後に計算されます。 * * * 特定のスキル/アイテムを使った時、 * このアクタはー対象にx防御力を失いますが、 * 0アーマーを下回らないようにします。 * 最後に計算されます。 * * =========================================================================== * ルナティックモード - カスタム防御力スケーリング * =========================================================================== * * JavaScriptの経験がある人は、ルナティックモードを使って、 * 特定のスキルやアイテムに対してメモ欄内で * 防御力のスケーリングを行う方法を計算することができます。 * * * value= 100; * value /= 100 + armor; * * デフォルトの正の防御力率を使用する代わりに、 * スキル/アイテムの正の防御力カスタム計算率を設定できます。 * * * value= 2 - (100 / (100 - armor)); * value= 1.5; * * デフォルトの正の防御力率を使用する代わりに、 * スキル/アイテムに負の防御力カスタム計算率を設定できます。 * * * armor = target.def; * armor -= user.atk / 4; * * スキル/アイテムに防御力の尺度変更に使用される * 基本防御力値を計算するためのカスタム方法を設定できます。 * * =========================================================================== * Yanfly Engine Plugins - アクションシーケンスコマンド * =========================================================================== * * YEP_BattleEngineCoreがこのプラグインと共にインストールされている場合、 * これらの追加の防御力スケーリング関連のアクションシーケンスを利用できます。 * * =========================================================================== * ARMOR PENETRATION: X * ARMOR PENETRATION: X% * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - * スキルに、 * x・x%のいずれかの率のグローバル防御力貫通特性を持たせます。 * このプロパティは、アクションシーケンスの最後にリセットされます。 * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - * 例: armor penetration: 20 * armor penetration: 30% * =========================================================================== * * =========================================================================== * ARMOR REDUCTION: X * ARMOR REDUCTION: X% * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - * スキルに、 * x・x%のいずれかの率のグローバル防御力減少特性を持たせます。 * このプロパティは、アクションシーケンスの最後にリセットされます。 * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - * 例: armor reduction: 20 * armor reduction: 30% * =========================================================================== * * =========================================================================== * RESET ARMOR PENETRATION * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - * グローバルセット防御力貫通特性をリセットします。 * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - * 例: reset armor penetration * =========================================================================== * * =========================================================================== * RESET ARMOR REDUCTION * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - * グローバルセット防御力リダクションプロパティをリセットします。 * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - * 例: reset armor reduction * =========================================================================== * * =========================================================================== * Changelog * =========================================================================== * * Version 1.05: * - Bypass the isDevToolsOpen() error when bad code is inserted into a script * call or custom Lunatic Mode code segment due to updating to MV 1.6.1. * * Version 1.04: * - Updated for RPG Maker MV version 1.5.0. * * Version 1.03: * - Lunatic Mode fail safes added. * * Version 1.02: * - Updated for RPG Maker MV version 1.1.0. * * Version 1.01: * - Fixed the notetag from not working with the intended * effect. * - Negative armor damage calculations are reworked to function as intended. * * Version 1.00: * - Finished Plugin! */