独学ツクールブログ

ツクールでのオリジナル作品の話を中心に創作関係の徒然な語り。

<< RGSS奮闘記61:バッグバグにしてやんよ | main | RGSS奮闘記63:バグりまくりスティ >>

[ - ] スポンサーサイト

一定期間更新がないため広告を表示しています

| 2018.05.23 Wednesday | - | - |

[ RGSS奮闘記 ] RGSS奮闘記62:Bugってハニー

RGSSのデバッグ第2弾。
今回は戦闘計算式関連。


その3:物理攻撃スキルが命中率99%以下で必ずミスする(不具合)

Game_Battler#def skill_effectの「第一命中判定」の式は以下の通り。

hit = skill.hit
if skill.atk_f > 0
hit *= user.hit / 100
end

問題は3行目。Rubyでは「整数/整数=整数」となるため、user_hitが99以下の場合hitが0になってしまう。
先に除算を行っているのがまずいので、ここはこう書き換える。
hit = skill.atk_f > 0 ? skill.hit * user.hit / 100 : skill.hit



その4:スキルの威力が0の場合、ダメージを与えても「Miss」と表示される(不具合)

攻撃スキルの威力が0に設定されている場合というのがよくあることなのかどうかわからないが、どちらにしても計算上ダメージが入っているのに「Miss」表示はないだろう。

問題点。183行目に
if skill.power == 0

これが「# 威力が 0 の場合」とのコメント付きで記述されている。いやいやそれはどうなのよ。
ダメージが0の場合のみ「Miss」表示するように条件を追加。
if skill.power == 0 && self.damage == 0

次回でいったん終了。


タグ:[Ruby] [RGSS] [素材] [プリセットデバッグ]

| 2011.05.20 Friday 22:12 | comments(0) | trackbacks(0) |

[ - ] スポンサーサイト

| 2018.05.23 Wednesday 22:12 | - | - |

コメント

コメントする






この記事のトラックバックURL

トラックバック

このページの先頭へ▲

Twitter

WebClap

Blogram

ブログランキングならblogram

calendar

S M T W T F S
  12345
6789101112
13141516171819
20212223242526
2728293031  
<< October 2019 >>

categories

archives

Amazon

selected entries

recent comment

recent trackback

recent ranking

links

search this site.

sponsored links

others

mobile

qrcode

powered

無料ブログ作成サービス JUGEM