特殊ダメージ計算式



コンセプト ツクール純正のダメージ計算式を全く違う形にしたい。
旧スパロボ風のダメージ計算式になる。
挿入位置 「MAIN」直上で、指定値ダメージ緩和バリアより上。
完成すると 装備依存型のダメージ計算式になる。
更新履歴



★ はじめに ★

・「ダメージ計算再定義」と「パラメータ追加」「ステータス画面配置換え」
 はこの素材を導入する場合、使用する必要がありません。
・ステータス画面や装備画面、ショップ画面を変更してるので
 他の素材導入の場合はその素材より下に導入して下さい。
・KGC様「装備拡張」「拡張装備画面」「200x/XP 機能再現」及び改変素材
「装備拡張:武器拡張追加」「拡張装備画面改」対応済みです。
 その場合は素材の「下に」このスクリプトを導入して下さい。


★ 機能概要 ★

・昔の第四次スパロボのようなダメージ計算を行ないます。
 なので「攻撃・防御・精神」の3項目は「100」を基準にそれ以上なら
 強くなり、100以下なら弱くなります。
・完全に装備依存のダメージ計算式です。
 通常のRPGのように初期武器が一桁攻撃力なら恐らく終盤では
 ダメージインフレ起こします。
・「武器の能力値×バトラーの攻撃力/100」で武器攻撃力の何倍という計算です。
・防御側も同じく装備の「防御力×バトラー防御力/100」と、攻撃側と同じ計算。
・スキルは物理も魔法も同じく装備防御力で計算を行ないます。
 精神は攻撃側の項目となります。
 魔法攻撃は純正では回避不能なので、回避出来るように設定があります。
・魔法攻撃は「武器精神力×バトラーの精神力/100」で計算。
 武器に精神力設定を行なわないと魔法攻撃が非常に弱くなります。
・パラメータ追加スクリプトが同梱されてるので耐性計算も行ないます。
・ショップ画面でのステータス表示が各種能力値との比較が表示されます。
・装備画面でのパラメータは元の装備と変更装備の比較値表示となります。
・ステータス画面表示を一新して従来の倍以上の項目が表示されます。
 その場合「装備拡張:武器拡張追加」導入時は自動的に
 「ステータス画面配置変え」と同じ効果が適用されます。


★ 使用方法 ★

・敵キャラのメモ欄に「<二刀流>」「<武器ID xx>」「<武器2ID xx>」
 を入れると武器能力及び特性が反映されます。
 バトルレイアウト変更併用時はサイドビューで武器振りも可能です。
 片手なら「<武器ID xx>」のみ。二刀流は上記のように
 左から順に一行ずつ記載して下さい。


  ・武器ではなく値を設定したい場合は
 「<武器威力 武器攻撃力の値,武器精神力の値>」と記載。
 二刀流にしたい場合は
 「<二刀流>」「<武器威力 xx,xx>」「<武器威力2 xx,xx>」
 と左から順に「一行ずつ記載」して下さい。
・敵キャラの防具防御力は「<装甲 xx>」と記載すること。
・メモ欄無設定の場合はスクリプト内の設定値を反映。
・敵キャラメモ欄に「<ボス>」と入れると耐性計算をボス用に最適化。


★ 耐性について ★

・パラメータ追加「物理耐性」

 最大HP×設定値 + 基本防御力) / 2

・パラメータ追加「魔法耐性」設定値

 最大MP×設定値 + 基本精神力) / 2

※敵キャラメモ欄に<ボス>と記載されると設定値が半分で計算されます。
 これは、ボスの場合は設定HPやMPが多く設定されることへの対処です。

★ ダメージ計算式 ★

「基本攻撃力・基本精神力」は「武器を除く攻撃力もしくは精神力」で
「基本防御力」は「裸の防御力」を示しています。
なので、防具の攻撃力や精神力は基本値に加算されます。
敵の場合はデータベースの値の設定がそのまま反映されます。
☆ 通常攻撃 ☆

 攻撃力 = 武器攻撃力×バトラー基本攻撃力÷100
 防御力 = 防具防御力×バトラー基本防御力÷100

   ※先に属性による補正が入った後に

   ダメージ = 攻撃力 ー 防御力
 ダメージ ー 物理耐性 ÷「ADD_PARAM_DEF設定値」
 ダメージ ÷「FINAL_DAMAGE_REVISIONの設定値」
  ☆ スキルダメージ計算 ☆

 ダメージ = スキルのベースダメージ値

   ※打撃関係度が0より大きい場合
 damage1 = ダメージ * (使用者攻撃力+打撃関係度)/200
damage1 += 武器攻撃力×バトラー基本攻撃力÷100

   ※精神関係度が0より大きい場合
 damage2 = ダメージ * (使用者精神力+精神関係度)/200
damage2 += 武器精神力×バトラー基本精神力÷100

  ダメージ = (damage1 + damage2) / 倍率
※倍率は関係度が両方とも0より大きければ2。それ以外は1。

 ※先に属性による補正が入った後に

   防御力 = 防具防御力×バトラー基本防御力÷100

ダメージ -= 防御力 ※防御無視はこの部分の計算を行なわない。

※打撃関係度が0より大きい場合(この耐性処理は防御無視とは関係がない)
ダメージ -= (物理耐性 * 打撃関係度 / 100) / 「ADD_PARAM_DEF設定値」

※精神関係度が0より大きい場合(この耐性処理は防御無視とは関係がない)
ダメージ -= (魔法耐性 * 精神関係度 / 100) / 「ADD_PARAM_MAG_DEF設定値」

 ダメージ ÷「FINAL_DAMAGE_REVISIONの設定値」

  ☆ 説明 ☆


★ 通常攻撃解説 ★
 武器攻撃力のバトラー攻撃力%が攻撃側の値
 防具防御力のバトラー防御力%が防御側の値
 これを引いた値がダメージとなります。
防御力減算前に「属性補正」を行なった後に
防御を引いて耐性計算を行ない、余った値でクリティカル計算となります。


★ スキル攻撃解説 ★
スキルの場合はデータベースの設定基本値に
関係度別にダメージを算出後、合計を割って平均値を出しています。
なので、スキルダメージ値ベースでバトラー攻撃力と打撃関係度などを
処理して計算を行なった後に武器の攻撃力や精神力を加算しています。

防御側の計算で攻撃側のスキルが打撃関係度が高くても精神関係度が高くても
防御側の精神力を防御には入れていません。
つまり「攻撃側の攻撃力判定でしか精神を使ってません。」
「防御の弱いバトラーは魔法にも弱く」なります。
ただし、魔法耐性の計算は行なっているので調整程度は可能です。
また、耐性はスキルの関係度に応じて乗算されるので
関係度の高いスキルは耐性も高めに補正されます。

回復の場合は「耐性が強いと回復量が減る」仕様となっています。
攻撃魔法に耐性があると回復魔法にも耐性が出ます。

防御無視の場合は装甲による防御計算を行ないません。
ただし、耐性計算は無視されずに計算されます。

魔法スキルは純正では回避不能ですが、この計算式に伴って
魔法スキルを回避出来る設定もスクリプト内にあります。


★ データベース設定解説 ★
基本的に・・・

攻撃側の武器攻撃×基本攻撃力% - 防御側の防具防御×基本防御%

atk = 武器atk100 * バトラーatk150 / 100 = 150
def = 防具def50 * バトラーdef120 / 100 = 60
ダメージ = 150 - 60 = 90

からの耐性計算となるので、純粋に防御が攻撃を下回るような設定でないと
ダメージを受けなくなります。
武器の攻撃力及び精神力の設定は値が高いほどバトラーの能力が
反映されやすいという特徴があります。
攻撃力500の武器でもバトラー攻撃力が200と80の場合では

500 * 200% = 1000 500 * 80% = 400

と、同じ攻撃力500の武器でも600の武器攻撃力の差が出ます。
装備パラメータ下限〜上限の差を小さくしないと、ちょっと前の
マップの敵がザコになりかねません。
純正プロジェクトのようなデータの設定では次の街の装備を
整えた段階で前の街にいる敵の攻撃はダメージを受けないと思います。

あくまで「攻撃力-防御力」の計算なので設定の際は考慮して下さい。


★ 二刀流について ★
TWO_SWORDS_STYLE_RATE という設定で武器攻撃力の%分を増減します。
武器攻撃力によって大幅に増減するこのスクリプトでは非常に強力な
能力になるのでバランス取りの為にダメージ計算時にこの設定分を
増減することで調整します。(初期設定は70%で計算します。)

攻撃力30の武器を二刀流した場合
60 × バトラー基本攻撃力 ÷ 100
なので最終ダメージが倍くらい違うことになります。
補正によって片手キャラとの差をいくらか減らせます。
必要ない場合は設定を「100」にすると補正されません。




特殊ダメージ計算式:base「3月6日更新」





特殊ダメージ計算式:window「3月1日更新」









テンプレートのpondt