2013年12月9日月曜日

部隊シミュレータバグ><;; ~人のフリ見て我が(ry

見つけてしまいました・・・部隊シミュレータの結構大きめなバグです><w
本日Ver2.3にして修正しましたので、Ver2.2以前のバージョンをお使いの方は更新宜しくお願いしますm(_ _)m

20131222追記
Ver2.2以前の計算方法でやっぱり合っていたようです><
色々と混乱しておりまして、申し訳ありません。なのでこちらの記事は勘違い記事という事で。。

で、そのバグの内容とは。将スキルと一般スキルが混在している部隊をシミュレートすると、
その結果がおかしくなる場合があることが判明しまして。。
(それぞれ、部隊内に一般スキルのみ、将スキルのみの場合だと正常)
例えば。
このような部隊をシミュレートしたとします。
すると、Ver2.2以前では・・・
このような結果になります。
棒が4本なのは、スキルが「二天一流」「覇道 不如帰」の2つあって、左から
①両方発動しない
②「覇道 不如帰」のみ発動する
③「二天一流」のみ発動する
④両方のスキルが発動する
の4パターンですが。このうちの④のスキル計算がおかしかったのです。。
これがMAX値になるので、シミュレータによれば攻撃力86770
実際に計算すると「二天一流」は将攻+40%UP、「覇道 不如帰」は槍馬砲攻+30%UPなので、
それぞれの武将の攻撃力は、
武蔵:
{ 30380*1.2*(1+0.4) + 1*16*1.2 }*(1+0.3) = 66374.88
大人家康:
{ 12130*1.2*(1+0.4) + 1*16*1.2 }*(1+0.3) = 26516.88
となって、66374.88+26516.88=92891.76
これが正しい答えです・・・

20131222追記
↑は正しくないとのことです。。
武蔵:
30380*1.2*(1+0.4+0.3) + 1*16*1.2*(1+0.3) = 62000.16
大人家康:
12130*1.2*(1+0.4+0.3) + 1*16*1.2*(1+0.3) = 24770.16
で、これの和を取って62000.16+24770.17=86770.32
つまり、別にもともと間違っていなかったとのことで・・・Ver2.51で再修正しましたm(_ _)m

Ver2.3で同じようにシミュレートすると、
こんな感じにちゃんと上の計算と合致するような答えになります><
この部隊シミュレータ、折角非常に多くの方に使ってもらっているというのにこんな穴がまだ残っていたとは申し訳ない気持ちでいっぱいです・・・
“特定条件下でのみおかしくなる”みたいな不具合は見つけるのが難しい><;;
今後も私が気付く範囲で、IXAやめない限りは(IXAが続いていればw)
定期的に更新していきたいと思っています。
ボケボケな作者ですが、アレっと思う所を見つけられましたら連絡宜しくお願いしますm(_ _)m

     ◆     □     ◆

ところで、このバグに気付いたきっかけというのは。
この間のメンテで、コスト依存スキルについては手が加えられていたので、部隊スキルについてはどうなのかなと調べているときに気がついたのですよね^^;;
部隊スキルの話については、数回前の記事(部隊スキル計算式・続 ~将攻二倍増トノ事)を・・・
その部隊スキルの件についての実験結果を紹介。
1-8鯖にて。
七本槍部隊で、こんな感じのを作りまして。
突撃先は、★4-1210空き地。
馬で4035出さないと勝てない空き地です。
上のSSでも分かる通り、素攻のままでは勝てません。
これに、七本槍進撃の『全攻2%上昇』が作用すると・・・普通に部隊全体2%UPするだけならば、
3947*(1+0.02) = 4025.94。
勝てないはずです・・・が・・・
勝てちゃうんだなぁこれが(笑)
部隊スキルは、どうやら将攻に効果が重複して(2乗になって)かかるまま変わっていない
ようです。
ふと思ったんですけど。先のタイトルで『部隊スキル計算式・続 ~将攻二倍増トノ事』っておかしいですよね^^;; 正確には将攻二乗です・・・抜けてるところはご容赦を。。
Ver2.3から、部隊スキル効果を将攻二乗にするようにするオプションを追加。
これにチェックを入れて部隊スキルを確定させると、現状のIXAの仕様通りのシミュレーションができます。(もっとも、いつまでこのままかは分からないのでこのような形で実装しましたw)
実験で使った七本槍部隊をシミュレーションしますと・・・
総攻撃力4090、と。勝利判定になるわけです。
一応検算しておきますと、
{(1232*1.02+25*12)*0.95+(1112*1.02+25*12)*0.95+(1150*1.02+24*12)*0.80}*1.02 = 4090.3
ちゃんと合っているようです♪

バグに気付いたのが昨日の夜でして、かなり慌ててver2.3を出しました(汗
武将ランキング機能は半分ほど作っていたのですがまだ実装してません><
おいおい、12月の新武将のDB更新も兼ねて出しますのでもう暫くお待ちください。。

0 件のコメント:

コメントを投稿