« [JavaScript]辞書(連想)配列のKeyが取り出せない? | トップページ | [ Javascript ] 辞書(連想)配列の Key を取り出す方法 »

2006/08/06

[ UO ] バード成功率計算ツール

このツールは現在 α 版です。バグなどを発見しましたらコメントかメールにてお知らせください。 データがないモンスターが結構います ( 特にパラゴン )。皆様からのデータの投稿をお待ちしております。
なお、ライセンスは GPL3 です。

今回はバードスキルの成功率計算ツールです。UO 系の掲示板を回っていると計算ツールを探しているユーザが結構います。その中には Java を使ったツールを紹介されて JavaVM 関係のトラブル ( XP には JavaVM が標準では存在しないのです ) に遭遇して困っている方がいました。やっぱりほとんどのユーザにとっては JavaVM って何のためにあるのかわからないから、「JavaVM 入れてね」っていわれても「なんで?」って思っちゃうんですよね。そこで変なモノを入れなくてすむ計算ツールを作ってみました。国際標準規格準拠を意識して作りましたのでほとんどのブラウザで動作すると思います。わたし自身は IE6.0 SP2 と Firefox 1.5.0.3 で動作確認を行っています。

バードスキル 音楽スキル 楽器

 
Select target

成功率

使い方
スキルを使用したときの成功率を知りたいとき

  1. バードスキルを選択してください。その下にある「input value」と書かれているボックスに、選択したスキルのスキル値を入力してください。たとえば、不調和でスキル値が 90 ならば --Select Skill-- から discordance(不調和) を選んでから input value と書かれたボックスに 90 と入力します。
  2. 音楽スキルのスキル値を入力してください。
  3. 使用する楽器のタイプを選択してください。たとえば高品質の楽器を使用するならば Exceptional Quality を選択します。
  4. ターゲットとなるモンスターを選びます。まず、モンスターが所属するグループを選択してください。次に、グループの右側にあるセレクトボックスから種族を選びます。ドラゴンの場合はグループで Reptile(爬虫類) を選んでから、その右側のセレクトボックスで dragon を選びます。
  5. 最後に calculate ボタンを押してください。成功率が表示されると思います。
  6. 続けて使用するときは、Reset ボタンをクリックしてください。

スキルを逆算したいとき

  1. バードスキルを選択してください。
  2. 楽器の種類 (NQ, HQ, 特攻、反特攻 ) を選択してください。
  3. ターゲットを選択してください。
  4. 成功率を入力してください。
  5. 音楽スキルを逆算したいときは、音楽スキルを空欄にしてバードスキルのスキル値を入力してから「Calculate」ボタンをクリックします。バードスキルを逆算したいときは、バードスキルのスキル値入力欄はそのままにして音楽スキルと成功率を入力して「Calculate」ボタンをクリックします。

たとえば、Balron Daemon に 音楽120 で HQ 楽器を使って不調和を試みたときに100% 成功する不調和のスキル値を求めたいときは次のように操作します。 まず Discordance(不調和)を選びます。次に Exceptional Quality を選びます。ターゲットは Daemon(悪魔族) → Balron Daemon の順に選択します。 最後に音楽スキルの 120 と成功率の 100 を入力してから Calculate ボタンをクリックします。

計算について

バード難易度、計算式については公式データブックを参考にさせていただきました。 公式データブックに載っていないデータについては自分のキャラでアニマルロアを使うなどで調べた平均を使っています。

不調和と PM については同じ計算式になっています。バードスキルを dpm, 音楽スキルを m, バード難易度を dif, 楽器ボーナスを sp とすると成功率 R は次の式で求められます。楽器ボーナスは標準品質は 0%, 高品質 10%, 特攻 20%, 反特攻 -20% となっています。

R = 50 + 2{ dpm - ( dif - 10 ) } + sp
これが基本の成功率で、音楽スキルが 100 未満のときはペナルティが、100 以上のときはボーナス補正が入ります。最終的には次のようになります。
m < 100 のとき R = [ 50 + 2{ dpm - ( dif - 10 )} + sp ] * ( m / 100 )
m > 100 のとき R = 50 + 2{ dpm - (dif - 10 )} + sp + ( m - 100 )

扇動の場合は、難易度は2つのターゲットのバード難易度の平均になります。つまり、扇動スキルを p, 第一ターゲットのバード難易度を dif_1, 第二ターゲットのバード難易度を dif_2, 扇動難易度を avg_dif とすると成功率 R の基本値は次の式で求められます。

R = 50 + 2{ p - (avg_dif - 5 ) } + sp
不調和、PM と同じく音楽スキルの値に基いて修正が行われ、最終的な成功率になります。
m < 100 のとき R = [ 50 + 2{ p - (avg_dif - 5 )} + sp ] * ( m / 100 )
m > 100 のとき R = 50 + 2{ p - (avg_dif - 5 )} + sp + ( m - 100 )

バグ?

Cocolog システムのコード自動修正機能によってレイアウトが崩れています(;´Д`) これはわたしには直しようがないです。直接 HTML を編集しているユーザにとっては有害でしかないのでオプションで無効にするようにフィードバックを送ったのですが反映される気配がありません。

更新履歴
2006.08.08
バード耐性を持った生物をターゲットに選んだときに「不可能」と表示するように修正。
2006.08.09
成功率からバードスキルを逆算する機能と、音楽スキルを逆算する機能を追加。 条件分岐がちょっと不安。「これっておかしくない?」と思いましたら遠慮なく連絡してくださいませ。
逆算機能を追加したらコードがめちゃめちゃ汚くなりました _| ̄|○il|!
最初から逆算機能も視野に入れて設計すればよかったと激しく後悔。
2006.08.14
オフィディアンバーサーカーとオフィディアン[General]を追加
2006.08.25
成功率が100%以上になったりマイナスになることがあったのを修正。
今まで気付きませんでした_| ̄|○il|! 2006.09.10
こっちも他のモンスに対する成功率がすぐに確認できるように変更。

謝辞

このツールを製作するにあたり、アドバイスおよび協力をいただいた havana 氏に感謝いたします。havana 氏の協力なくしてこのツールを公開することはできませんでした。本当にありがとう!

他の UO 計算ツール
テイム成功率・命令成功率計算ツール
攻撃速度シュミレータ

|

« [JavaScript]辞書(連想)配列のKeyが取り出せない? | トップページ | [ Javascript ] 辞書(連想)配列の Key を取り出す方法 »

コメント

この記事へのコメントは終了しました。

トラックバック


この記事へのトラックバック一覧です: [ UO ] バード成功率計算ツール:

« [JavaScript]辞書(連想)配列のKeyが取り出せない? | トップページ | [ Javascript ] 辞書(連想)配列の Key を取り出す方法 »