【ポケモンMATLABダメ計】ダメージ補正リスト

本記事は以下リンクの補足として扱う。
以下内容を示す。

7.ダメージ補正の概要

ダメージ補正は以下式の計算家庭において,わざ,特性,もちもの,天候,フィールドなどの各要素によって係数が変わる補正を指すこととする。

以下,コードにダメージ補正を記述する
・func01
・func_calBlock
※分類について
At攻撃視点の補正
Df防御視点の補正
-分類なし
未実装

7.1 すばやさ補正
7.2 わざ威力変更
 7.2.1 Zわざ
 7.2.2 ダイマックスわざ
7.3 わざタイプ変更
7.4 物理特殊判定
7.5 わざ威力補正
7.6 攻撃実数値補正
7.7 防御実数値補正
7.8 +2前補正
7.9 +2後補正
7.10 タイプ相性・一致補正
7.11 ダメージ補正
7.12 スリップダメージ補正
7.13 回復ソース補正
7.x1 あとがき
7.x2 更新履歴


RT-Mode実装に伴う変更
→配列の判別時に同じコードを何度も回すのが面倒
→コード自体増設箇所が多すぎる
→関数処理できないか検討

※ダメージ補正係数追加に伴う火力指数,耐久指数計算の再設定
→Simulink上のブロックを追加,削除する

switch,if文などの関数化
before
通常フロー内のコードにswitch,if構文を記述
→for文で何度も計算を繰り返すのが困難

After
上記コードを関数化
結果,通常フローのコードは下記のようになり,for文にも容易に対応できるようになる。
当処理を補正リスト全てに適用する。


7.1 すばやさ補正

すばやさに関する補正内容を以下に示す。
No.補正内容構造体
1特性補正cal.sp_A
2もちもの補正cal.sp_B
3状態補正cal.sp_C
4状態補正2cal.sp_C2
5フィールド補正cal.sp_D
6
7
8
【コード:】

7.1.1 特性補正(cal.sp.A)

No.特性補正詳細分類
1すなかき天候すなのとき,素早さ2.0倍-
2すいすい天候あめのとき,素早さ2.0倍-
3ようりょくそ天候ひでりのとき,素早さ2.0倍-
4ゆきかき天候あられのとき,素早さ2.0倍-
5かるわざもちものなしのとき,素早さ2.0倍-
(本来は持っていた道具を消費する判定で発動)
6はやあし状態異常のとき,素早さ1.5倍-
7
8
9
10
【コード:】

7.1.2 もちもの補正(cal.sp.B)

No.もちもの補正詳細分類
1こだわりスカーフS実数値1.5倍-
2
3
4
5
【コード:】

7.1.3 状態補正(cal.sp.C)

No.状態補正詳細分類
1まひS実数値0.5(1/4で動けない)-
2スロスタートS実数値0.5
3
4
5
【コード:】

7.1.4 状態補正2(cal.sp.C2)

上表に同じ

7.1.5 フィールド補正(cal.sp.D)

No.フィールド補正詳細分類
1おいかぜS実数値2.0
2
3
4
5
【コード:】

7.2 わざ威力変更

わざ威力変更に関する補正内容を以下に示す。

No.補正内容構造体
1わざ威力変更para.move
2
3
4
5
Zわざ,ダイマックスによるわざ威力変更は別途記載予定
【コード:】


No.わざ補正詳細分類
1けたぐり以下表を参照At
2くさむすび以下表を参照At
(相手の体重)<10 わざ威力20
(相手の体重)<25 わざ威力40
(相手の体重)<50 わざ威力60
(相手の体重)<100 わざ威力80
(相手の体重)<200 わざ威力100
else わざ威力120
3ヘビーボンバー以下表を参照At
4ヒートスタンプ以下表を参照At
(相手の体重)/(自分の体重)<=0.2 わざの威力120
(相手の体重)/(自分の体重)<=0.25 わざの威力100
(相手の体重)/(自分の体重)<=1/3 わざの威力80
(相手の体重)/(自分の体重)<=0.5 わざの威力60
else わざ威力40
5ジャイロボールrounddown(25*(相手のS)/(自分のS))+1を技の威力とするAt
最大値150
6エレキボール(相手のS)/(自分のS) < 1のとき,わざ威力40At
(相手のS)/(自分のS) < 2のとき,わざ威力60
(相手のS)/(自分のS) < 3のとき,わざ威力80
(相手のS)/(自分のS) < 4のとき,わざ威力120
else ,わざ威力150
【コード:】

7.2.1 Zわざ

Zわざの威力は以下条件文でソートする。

条件文Zわざ威力
(わざ威力) < 60100
(わざ威力) < 70120
(わざ威力) < 80140
(わざ威力) < 90160
(わざ威力) < 100175
(わざ威力) < 110180
(わざ威力) < 120185
(わざ威力) < 130190
(わざ威力) < 140195
else200
※特別なZわざは別途コードにより実装予定。
【コード:】

7.2.2 ダイマックスわざ

ダイマックスわざのテキスト変更を行う。







7.3 わざタイプ変更

わざタイプ変更に関する補正内容を以下に示す。

No.補正内容構造体
1わざタイプ変更para.move_type
2
3


No.特性補正詳細分類
1スカイスキンノーマルタイプのわざをひこうタイプに変更する。At
2フェアリースキンノーマルタイプのわざをフェアリータイプに変更する。At
3エレキスキンノーマルタイプのわざをでんきタイプに変更する。At
4フリーズスキンノーマルタイプのわざをこおりタイプに変更する。At
5ノーマルスキンすべての技をノーマルタイプに変更する。At
6
7
8
9
10
へんげんじざいリベロによるわざタイプ変更補正は行わない
 代わりにタイプ一致補正においてコード記述を行う。
【コード:】

7.4 物理特殊判定

物理特殊判定に関する補正内容を以下に示す。

No.補正内容構造体
1物理特殊判定Opr.para.jdg
2
3
【コード:】

No.わざ補正詳細分類
1サイコショックDではなくBでダメージ処理At
2サイコブレイクDではなくBでダメージ処理。高級サイコショックAt
3しんぴのつるぎDではなくBでダメージ処理At
4
5
【コード:】

7.5 わざ威力補正

わざ威力補正に関する補正内容を以下に示す。
No.補正内容構造体
1特性補正Atcal.move_B
2特性補正Dfcal.move_B_df
3もちもの補正cal.move_C
4フィールドcal.move_D
5わざ補正cal.move_E
6
7
8
【コード:】

7.5.1 特性補正At(cal.move.B)

No.特性補正詳細分類DM
1スカイスキンわざタイプをノーマル→ひこう,わざ威力1.2倍At
2フェアリースキンわざタイプをノーマル→フェアリー,わざ威力1.2倍At
3エレキスキンわざタイプをノーマル→でんき,わざ威力1.2倍At
4フリーズスキンわざタイプをノーマル→こおり,わざ威力1.2倍At
5テクニシャンわざ威力60以下のとき,わざ威力1.5倍At
6かたいツメぶつり,接触判定のわざ威力1.3倍At
7がんじょうあご対象のわざの威力1.5倍At
8ちからずく対象のわざの威力1.3倍At
9すてみ対象のわざの威力1.2倍At
10てつのこぶし対象のわざの威力1.2倍At
11メガランチャー対象のわざの威力1.5倍At
12すいほうみずタイプのわざの威力2.0倍At
13フェアリーオーラフェアリータイプのわざの威力4/3倍(味方敵全体)At
14ダークオーラあくタイプのわざの威力4/3倍(味方敵全体)At
15アナライズ後攻攻撃でわざの威力1.3倍At
16すなのちから天候すなでいわ,じめん,はがねタイプのわざの威力1.3倍At
17ブレインフォース効果抜群のとき,わざの威力1.25倍At
18はがねつかいはがねタイプのわざの威力1.5倍At
19しんりょくくさタイプのわざの威力1.5倍(HP1/3判定は含まず)At
20もうかほのおタイプのわざの威力1.5倍(HP1/3判定は含まず)At
21げきりゅうみずタイプのわざの威力1.5倍(HP1/3判定は含まず)At
22ごりむちゅう物理わざの威力1.5倍At
23はがねのせいしんはがねタイプのわざの威力1.5倍At
24パワースポット味方のわざの威力1.3倍At
25パンクロック対象のわざの威力1.3倍At
26ねつぼうそうやけど状態の時,特殊技1.5倍At
27どくぼうそうどく,もうどく状態の時,物理技1.5倍At
28オーラブレイクフェアリーオーラ,ダークオーラの倍率を3/4倍にするDf
コードはフェアリーオーラ,ダークオーラ内に記述
29ノーマルスキンわざタイプをノーマル,わざ威力1.2倍At
30むしのしらせむしタイプのわざの威力1.5倍(HP1/3判定は含まず)At
→実装先送り※DMはダイマックス時に補正を受けるか否かの判別
【コード:】

7.5.2 特性補正Df(cal.move.B_df)

No.特性補正詳細分類
1こおりのりんぷん特殊判定のわざの威力0.5倍Df
2パンクロック対象のわざの威力0.5倍Df
3
4
5
ダメージではなく威力を半減と書いてある特性
 あついしぼうなどはダメージを半減となっているため,防御側の特性補正を追記した。
【コード:】

7.5.3 もちもの補正(cal.move_C)

No.もちもの補正詳細分類
1こころのしずくラティオス,ラティアスのエスパー・ドラゴンのわざ威力1.2倍At
2プレート各種対象タイプのわざの威力1.1倍At
3
4
5
【コード:】

7.5.4 フィールド補正(cal.move_D)

No.フィールド補正詳細分類
1エレキフィールドでんきタイプのわざ威力1.3倍(ひこうタイプ,特性ふゆう無効)At
2サイコフィールドエスパータイプのわざ威力1.3倍(ひこうタイプ,特性ふゆう無効)At
3グラスフィールドくさタイプのわざ威力1.3倍(ひこうタイプ,特性ふゆう無効)At
4
5
※防御側のフィールド補正はダメージに関する補正のため後述する。
【コード:】

7.5.5 わざ補正(cal.move_E)

No.わざ補正詳細分類
1エラがみ相手よりSが早かったら,威力2.0倍At
2でんげきくちばし相手よりSが早かったら,威力2.0倍At
3はたきおとす相手がもちものを持っていたら威力1.5倍At
4
5
【コード:】



7.6 攻撃実数値補正

攻撃実数値補正に関する補正内容を以下に示す。
No.補正内容構造体
1特性補正cal.at_A
2もちもの補正cal.at_B
3やけど補正cal.at_C
4おやこあい補正cal.at_F
5わざ補正cal.at_G
6
7
8
【コード:】

7.6.1 特性補正(cal.at_A)


No.特性補正詳細分類
1ちからもち物理判定で実数値2倍At
2ヨガパワー物理判定で実数値2倍At
3はりきりA実数値1.5倍At
4とうそうしんA,C実数値を同性なら1.25倍,異性なら0.75倍At
5プラスC実数値1.5倍At
6マイナスC実数値1.5倍At
7フラワーギフト天候はれのとき,A実数値1.5倍At
8よわきA,C実数値を0.5倍(HP1/2判定は含まず)At
9
10
【コード:】※とうそうしんの場合は1.25で固定(使用率の低い特性のため)

7.6.2 もちもの補正(cal.at_B)

No.もちもの補正詳細分類
1ふといホネガラガラ系統のA実数値2倍At
2でんきだまピカチュウのAC実数値2倍At
3こだわりハチマキA実数値1.5倍At
4こだわりメガネC実数値1.5倍At
5
6
7
8
9
10
【コード:】

7.6.3 やけど補正(cal.at_C)

No.特殊特性補正詳細分類
1こんじょう物理判定+やけど状態のとき補正At
2
3
4
5
【コード:】

7.6.4 おやこあい補正(cal.at_F)

No.特殊特性補正詳細分類
1おやこあいダメージ等倍+ ダメージ0.25倍(タイプ一致補正前)At
2
3
4
5
【コード:】

7.6.5 わざ補正(cal.at_G)


No.特性補正詳細分類
1フォトンゲイザーAとC実数値の高い方で攻撃At
2フォトンゲイザー防御特性無効化At
3イカサマ相手の攻撃実数値を反映(相手やけど考慮)At
4ボディプレス防御ランク,実数値を攻撃計算値に使用するAt
5
【コード:】

7.7 防御実数値補正

防御実数値補正に関する補正内容を以下に示す。
No.補正内容構造体
1特性補正cal.df_A
2もちもの補正cal.df_B
3天候補正cal.df_D
4
5
【コード:】

7.7.1 特性補正(cal.df_A)

No.特性補正詳細分類
1ふしぎなうろこ状態異常のときB実数値2倍Df
2フラワーギフト天候はれのとき,D実数値1.5倍Df
3
4
5
【コード:】

7.7.2 もちもの補正(cal.df_B)

No.もちもの補正詳細分類
1しんかのきせきBD実数値1.5倍Df
2とつげきチョッキD実数値1.5倍Df
3
4
5
【コード:】

7.7.3 天候補正(cal.df_D)

No.天候補正詳細分類
1すなあらしいわタイプのポケモンDを1.5倍するDf
2Df
3
4
5


7.8 +2前補正

+2前補正に関する補正内容を以下に示す。
No.補正内容構造体
1壁補正cal.cor_be_A
2複数攻撃補正cal.cor_be_B
3天候補正cal.cor_be_C
4
5

7.8.1 壁補正(cal.cor_be_A)

No.補正詳細分類
1シングル補正ダメージ倍率0.5-
2ダブル補正ダメージ倍率2/3-
3トリプル補正ダメージ倍率2/3-
4ロイヤル補正ダメージ倍率2/3-
5
【コード:】

7.8.2 複数攻撃補正(cal.cor_be_B)

No.補正詳細分類
1ダブル補正ダメージ倍率0.75-
2トリプル補正ダメージ倍率0.75-
3ロイヤル補正ダメージ倍率0.5-
4
5
【コード:】

7.8.3 天候補正(cal.cor_be_C)

No.特性補正詳細分類
1あめ補正みずタイプ技1.5倍,ほのおタイプ技0.5倍-
2ひでり補正ほのおタイプ技1.5倍,みずタイプ技0.5倍-
3
4
5
【コード:】

7.9 +2後補正

+2後補正に関する補正内容を以下に示す。
No.補正内容構造体
1いのちのたま補正cal.cor_af_A
2攻撃回数補正cal.cor_af_B
3急所補正cal.cor_af_C
4
5
【コード:】

7.9.1 いのちのたま補正

No.もちもの補正詳細分類
1いのちのたまダメージ1.3倍(+2後補正)At
2
3
【コード:】

7.9.2 攻撃回数補正補正

特定のわざのとき攻撃回数を変更する。
※現在は手動だが自動で最大値設定を行えるように考慮

7.9.3 急所補正

急所倍率1.5倍を適用する。
※At側:ランク-6〜-1のとき,ランク0に補正
※Df側:ランク+6〜-+1のとき,ランク0に補正

7.10 タイプ相性・一致補正

タイプ相性・一致補正に関する補正内容を以下に示す。
No.補正内容構造体
1タイプ相性補正cal.cor_fn_A
2タイプ一致特性補正cal.cor_fn_B
3達人の帯補正cal.cor_fn_C
4タイプ一致特性補正Dfcal.cor_fn_B2
5タイプ一致わざ補正cal.cor_fn_B
【コード:】

7.10.1 タイプ一致補正(cal.cor_fn_A)

No.特性補正詳細分類
1てきおうりょくタイプ一致補正を2.0に変更するAt
2へんげんじざいタイプ一致補正を1.5に変更するAt
3リベロタイプ一致補正を1.5に変更するAt
4
5
【コード:】

7.10.2 タイプ相性補正(cal.cor_fn_B)

No.特性補正詳細分類
1きもったまゴーストタイプにノーマル・かくとうわざを有効にするAt
2いろめがねタイプ相性<1のとき2倍補正At
3デルタストリームひこうタイプに抜群のわざを0.5倍にするDf
4
5

No.わざ補正詳細分類
1フリーズドライみずタイプへのこおりタイプ相性を2.0倍に補正するAt
2サウザンアローひこうタイプ,ふゆうにじめんタイプ相性を1.0倍に補正するAt
3
4
5
※現状特性補正とわざ補正を同じ構造体で処理している。
 →問題が発生したら分別を考慮
【コード:】

7.10.3 もちもの補正(cal.cor_fn_C)

No.もちもの補正詳細分類
1たつじんのおびダメージ1.2倍(+2後補正)At
2
3
【コード:】

7.10.4 タイプ一致特性補正At(cal.cor_fn_B2)

No.特性補正詳細分類
1デルタストリームひこうタイプに抜群のわざを0.5倍にするDf
2プリズムアーマータイプ相性抜群のとき,3/4倍補正するDf
3
4
5
【コード:】

7.10.5 タイプ一致わざ補正(cal.cor_fn_B)

No.わざ補正詳細分類
1フリーズドライみずタイプへのこおりタイプ相性を2.0倍に補正するAt
2サウザンアローひこうタイプ,ふゆうにじめんタイプ相性を1.0倍に補正するAt
3
4
5
※cal.cor_fn_Bをswitch構文として活用する。
【コード:】

7.11 ダメージ補正

ダメージ補正に関する補正内容を以下に示す。
No.補正内容構造体
1特性補正cor_fn_D
2フィールド補正cor_fn_F
3わざ補正cor_fn_G
4特性補正_Atcor_fn_E
5
【コード:】

7.11.1 特性補正(cal.cor_fn_D)

No.特性補正詳細分類
1あついしぼうほのお,こおりわざ0.5倍Df
2マルチスケイルダメージ0.5倍(初撃のみ適用考慮予定Df
3ファントムガードダメージ0.5倍(初撃のみ適用考慮予定Df
4フィルター効果抜群のときに3/4倍Df
5ハードロック効果抜群のときに3/4倍Df
6すいほうほのおわざ0.5倍Df
7もふもふ直積攻撃のわざ0.5倍Df
ほのおわざ2倍Df
8
9
10
【コード:】

7.11.2 フィールド補正(cal.cor_fn_F)

No.フィールド補正詳細分類
1グラスフィールドじしん,じならし,マグニチュードの威力を0.5倍Df
2ミストフィールドドラゴンタイプのわざの威力0.5倍Df
3
4
5
【コード:】

7.11.3 わざ補正(cal.cor_fn_G)

No.わざ補正詳細分類
1きょじゅうざんダメージ2.0倍At
2きょじゅうだんダメージ2.0倍At
3ダイマックスほうダメージ2.0倍At
4
5
【コード:】

7.11.4 特性補正_At(cal.cor_fn_E)

No.特性補正詳細分類
1はりこみ2.0倍ダメージ(本来は交代したポケモンに対して)At
2
3
4
5
【コード:】

7.12 スリップダメージ補正

メイン記事の3.6節,スリップダメージAに関してまとめる。
No.スリップダメージ詳細フラグ分類
1ステルスロック0.125×いわタイプ相性para.strkA
2キョダイコウジン0.125×はがねタイプ相性para.kdmkA
3キョダイガンジンステロに同じpara.kdmgA
4天候スリップボタン機能→デフォルト化para.wtsrA
5状態異常スリップボタン機能→デフォルト化para.stsrA
6まきびし(1回目)1/8ダメージpara.mkbs1A
7まきびし(2回目)1/6ダメージpara.mkbs2A
8まきびし(3回目)1/4ダメージpara.mkbs3A
9ばけのかわ1/8ダメージ※para.tokuA
10
【コード:】


7.13 回復ソース補正

考え中

7.x1 あとがき

・ちょっとした考察
ダイマックス時に適応される特性について
攻撃能力値に影響を与える特性わざの威力を倍率補正する特性で判別しているのかな?と思っただけです。

・ダイマックス適用可否について
引用ツイート,あくまでも参考程度で適用しています。


本記事は随時更新予定です。
加筆・修正等あればコメントまでお願いします。

【関連記事】


7.x2 更新履歴


No.更新日時UpdateIndex
12019.12.28本記事公開
22019.12.29”はやあし”を追加7.1.1
”ノーマルスキン”を追加7.3
”オーラブレイク”を追加7.5.1
”ノーマルスキン”を追加7.5.1
”むしのしらせ”を追加7.5.1
”とうそうしん”を追加7.6.1
”よわき”を追加7.6.1
”プラス”を追加7.6.1
”マイナス”を追加7.6.1
”フラワーギフト”を追加7.6.1
”フラワーギフト”を追加7.7.1
タイプ一致特性補正Atを追加(7.10.2を分別)7.10.4(New)
”デルタストリーム”を7.10.4へ移動7.10.4
”プリズムアーマー”を追加7.10.4
タイプ一致わざ補正を追加(7.10.2を分別)7.10.5(New)
”かんそうはだ”を追加7.11.1
”たいねつ”を追加7.11.1
”フレンドガード”を追加7.11.1
ダメージ特性補正Atを追加7.11.4(New)
”はりこみ”を追加7.11.4
32019.12.30一部特性をダイマックス時に適用しない7.5.1
わざ補正を追加7.5.5(New)
”エラがみ”を追加7.5.5
”でんげきくちばし”を追加7.5.5
”はたきおとす”を追加7.5.5
こだわり系のアイテムをダイマックス時に適用しない7.6.2
42020.01.06関数スクリプトを使用し,for文へ適用可能とする-
一部構想帯の名前を修正-
防御実数値の天候補正を追加7.8.3(New)

コメント

このブログの人気の投稿

【ポケモンGO】愛知県名古屋市・鶴舞公園の歩き方

【ポケモンGO】種族値,実数値,CPを計算してみた話(おまけで全ポケモン種族値リスト)

【ポケモン】MATLABでダメージ計算ツールを作成するお話

【ポケモンBDSP】固定シンボル色違い自動厳選プログラムのデバッグ