ポケモンのいろんな計算をします。私なりに使いやすいレイアウトにしたつもり。
個体値/努力値/能力値 他の2つから計算します(半角コンマ区切りHABCDSの順で入力)
ダメージ計算の欄は「攻撃能力値, 防御能力値, 威力, (HP:任意)」を半角コンマ区切り
ポケモン: 性格: レベル:
個体値: 計算
努力値: 計算
能力値: 計算
(種族値:)
攻防威 ダメージ計算

ポケモン: 性格: レベル:
個体値: 計算
努力値: 計算
能力値: 計算
(種族値:)
攻防威 ダメージ計算

ポケモン: 性格: レベル:
個体値: 計算
努力値: 計算
能力値: 計算
(種族値:)
攻防威 ダメージ計算

電卓:
・能力式の計算について
HP:(種族値×2+個体値+努力値÷4)×レベル÷100+レベル+10
ABCDS:{(種族値×2+個体値+努力値÷4)×レベル÷100+5}×性格補正
種族値とか努力値にあり得ない数値を入れてもいちいちチェックしてません。

・ダメージの計算について
{(レベル×2÷5+2)×技の威力×攻撃能力値÷防御能力値÷50+2}×(0.85〜1)
その枠のポケモンの情報は関係ないけどレベルはその枠のレベルの欄に従ってる。
あと一致補正とかは各自で。能力値か威力に*1.5とか書くか、結果を暗算で1.5倍する。
計算式の最後の切り捨て処理の前の値も表示させた。
HPを入力した場合はそのHPに対するダメージの割合(端数切り捨て)も表示させた。
参考: http://www18.atwiki.jp/dppokekousatsu/pages/436.html

・捕獲度:たぶん3から255の整数。ポケモンwikiとかに書いてあると思います。
・ボール補正:タイマーボール30ターン以降orダークボール条件発動だと4です。
・状態補正:ねむり2.5、どくまひやけど1.5です。
捕獲度a: ボール補正b: 状態補正c:
最大HP: 現在HP: 捕獲率を計算する  

計算式: x={ (MaxHP*3-NowHP*2)*a*b / (MaxHP*3) } *c
x≧255の場合は捕獲成功、その他の時は次へ
y=65535*√√65536 / √√(65536*255/x)を計算して
一回揺れる確率=y/65536(1〜65536の乱数とyを比較処理)
それを4回繰り返すので、つかまる確率は(y/65536)^4

切り捨て処理等を考慮しなければ捕まる確率はx/255ぐらいです。
それによればボール補正が2倍になれば捕まる確率は単純に2倍
眠りなら単純に2.5倍の確率...という風に考えて良いです。

・HP満タンのときx=abc/3 になります。それでa=捕獲度の最小値が3なんですね。
(x=1のとき、一回揺れる確率は1/√√255≒1/4です。)
・HPが0に近づくと、x=abc に近づきます。この近づき方は一次関数的です。
(だからあんまりぎりぎりまで削っても確率はそんなに変わらないです。)
伝説ポケモン(捕獲度=3)の場合、ボール補正が4、眠り補正2.5とすると
xの上限は3*4*2.5=30 ですから、捕まる確率の上限は11%ぐらいになります。
ボール補正・状態補正なしの場合はどんなにHPを削っても、1%ぐらいです。

と、書いてみたものの実際に計算させてみるとこの数字とは結構ずれますね。
4乗根と4乗などの操作があり、意外と切り捨ての影響が大きいようです。
あと、HPを削っても確率があんまり変わらないことも実感できると思います。
参考: http://game-capture.cc/bw/article/theory/catch.php
HOME inserted by FC2 system