ダメージ計算君

「ダメージ計算君」の編集履歴(バックアップ)一覧に戻る

ダメージ計算君 - (2016/10/25 (火) 00:53:29) のソース

#javascript(){{
<html>
   <head>
       <title>sample003</title>
       <script type="text/javascript">
           function Calc() {
//入力
               var ATK1; //攻撃力
               var VS; //属性相性
               var ope; //セレクトボックス用。適当
               var ATR; //属性強化・抵抗 ATtriRate
               var SKL; //スキル強度
               var OL; //支援分 OverLoad
               var CDMG; //クリダメ
               var BDMG; //追加ダメ Bonus DMG
               var DEF1; //防御力
               var PR; //防御貫通 PenetrationRatio
               var DDR; //ダメージ軽減率 Damage Decreasing Ratio
               var test; //テスト用
//従属
               var ATK2; //属性加味攻撃力
               var DEF2; //実質防御力
               var CR; //カット率 CutRatio
               var TTL; //合計強度 ToTaL
               var DMG; //ダメージ

//入力
               ATK1 = parseInt(document.form1.txtATK1.value);
               ope = parseInt(document.form1.selOpe.value);
               ATR = parseInt(document.form1.txtATR.value);
               SKL = parseInt(document.form1.txtSKL.value);
               OL = parseInt(document.form1.txtOL.value);
               CDMG = parseInt(document.form1.txtCDMG.value);
               BDMG = parseInt(document.form1.txtBDMG.value);
               DEF1 = parseInt(document.form1.txtDEF1.value);
               PR = parseInt(document.form1.txtPR.value);
               DDR = parseInt(document.form1.txtDDR.value);
//セレクトボックスを使う入力
        switch (ope) {
          case 1:
            VS = 130;
            ATK2 = ATK1*(VS+ATR)/100;
            break;
          case 2:
            VS = 100;
            ATK2 = ATK1*VS/100;
            break;
          case 3:
            VS = 70;
            ATK2 = ATK1*VS/100;
            break;
          default:
            break;
        }
            document.form1.txtVS.value = VS;
//従属
               DEF2 = DEF1*(100-PR)/100;
               CR = 100*(1-3500/(DEF2+3500));
               TTL = 100*(SKL+OL)/100*(100+CDMG)/100*(100+BDMG)/100;
               DMG = ATK2*TTL/100*(100-CR-DDR)/100;
               document.form1.txtATK2.value = ATK2;
               document.form1.txtDEF2.value = DEF2;
               document.form1.txtCR.value = parseInt(CR);
               document.form1.txtTTL.value = TTL;
               document.form1.txtDMG.value =  parseInt(DMG);

           }
       </script>
   </head>
   <body>
       <form name="form1">
           属性相性<select name="selOpe" size=1>
                        <option value="1">有利</option>
                        <option value="2">普通</option>
                        <option value="3">不利</option>
                   </select><br>
           攻撃力<INPUT TYPE="text" NAME="txtATK1" VALUE = 3000><br>
           属性強化・抵抗 (%)<INPUT TYPE="text" NAME="txtATR" VALUE = 0><br>
           防御貫通 (%)<INPUT TYPE="text" NAME="txtPR" VALUE = 0><br>
           クリダメ (%)<INPUT TYPE="text" NAME="txtCDMG" VALUE = 0><br>
           スキル強度 (%)<INPUT TYPE="text" NAME="txtSKL" VALUE = 100><br>
           オーバーロード等 (%)<INPUT TYPE="text" NAME="txtOL" VALUE = 0><br>
           追加ダメージ (%)<INPUT TYPE="text" NAME="txtBDMG" VALUE = 0><br>
           敵防御力<INPUT TYPE="text" NAME="txtDEF1" VALUE = 1000><br>
           敵ダメージ減少率 (%)<INPUT TYPE="text" NAME="txtDDR" VALUE = 0><br>
           <br>
           <br>
           ダメージ<INPUT TYPE="text" NAME="txtDMG"><br>
           <br>
           <br>
           相性<INPUT TYPE="text" NAME="txtVS"><br>
           属性込み攻撃力<INPUT TYPE="text" NAME="txtATK2"><br>
           実質防御力<INPUT TYPE="text" NAME="txtDEF2"><br>
           カット率 (%)<INPUT TYPE="text" NAME="txtCR"><br>
           合計強度(%)<INPUT TYPE="text" NAME="txtTTL"><br>
           
           <input type="button" name="cmdCalc" value="計算" onclick="Calc()">
       </form>

   </body>
</html>
}}

#contents
*使い方
>**ステータス入力
**攻撃力
武器や宝石やステータスアップ等を含めた合計攻撃力。
**属性強化・抵抗
「攻撃側の属性強化-防御側の属性抵抗」の値
例1 攻撃側属性強化30%、防御側属性抵抗0%→ "30"
例2 攻撃側属性強化0%、防御側属性抵抗50%→ "-50"
**防御貫通
防御貫通の値。100以上入れるとバグるので注意。なおゲーム内では100も100↑も同じダメージになる筈。
**クリダメ
クリダメ。裸状態での値は "100" 。注意。クリティカルが出なかった場合のダメージを計算したい場合は "0" と入力。
**スキル強度
スキル強度を入力。基本攻撃でのダメージを計算したい場合は "100" と入力。
**オーバーロード等
スキル強度を強化する効果の値を入力。
例 オーバーロード→ "75"、禁忌→ "100"、[[オクラ]]などのスキル強度アップ→ "150"。
**追加ダメージ
特性の「埋伏」や「暴悪」、[[ブルードラゴン]]のスキル2のような追加ダメージの値を入力
**敵防御力
攻撃される対象の防御力を入力。なお防御力は宝の塔や砦・廃坑の敵なら戦闘前の敵配置アイコンを長押しすれば調べられる。特性の「謙虚」等による防御力増加分は戦闘前のステータスには乗らないので注意。
**敵ダメージ減少率
攻撃される対象のスキルや特性によるダメージ減少率の合計を入力。
例 アリーナで相手が[[エンタル]]の特性「根性(パーティ)」と[[フェンジー]]の特性「プライド(パーティ)」
   を両方活性化させていて、こちらの残り人数が5人なら 30+4×5で "50"
>**計算
ステータス等を入力した後に下にある「計算」ボタンをクリック。
>**注意事項
ここで計算されるダメージはこちら側から敵に対して攻撃した場合のダメージです。
こちらが受けるダメージは、何故かダンジョンの種類毎に謎の係数が掛かりここで計算した値より少なくなります。

防御力により決まるダメージ減少率 (カット率と呼称) はラフな式 100×(1-3500/(防御力+3500))で代用しているので、
実際のダメージから導出した[[各種計算]]からは若干誤差が出ます目安程度で考えて下さい。

&color(white){合計:&counter()}
&color(white){今日:&counter(today)}
&color(white){昨日:&counter(yesterday)}