高レベルでの経験値関連の不具合解決

<終>ウルファールのおつかい制作日記
01 /15 2014
今日は高レベルでの経験値関連の不具合が解決したな。

不具合を解決しようと試行錯誤したところ、計算式を以下のように変更すると解決しました。

以前:cself43 *= cself44/100

以後:cself43 *= cself44
    cself43 /= 100

※cself43:次Lvまでの必要経験値、cself44:必要経験値増加率[%]の整数値
※どちらも実数計算

二つの記述の違いは計算を一度に行うか二度に分けて行うかのみ。おそらくこの違いがウディタの仕様である「一つの数値が約20億を超えた場合は数値が狂う事」を回避しているのと思うけれど詳細は不明。
ちなみに2の32乗の値は上記の通り約20億(正確には2の32乗を2で割った値)だけど、2の31乗を2で割った値は約10億7300万でした。今回の不具合は実数計算で約1070万の時に発生した事から何か関係があるかもしれない(約10億7300万から桁を二つ引くと約1070万になる)けど、やっぱり詳細不明。
何はともあれ不具合が解決したので、明日からは再びミニゲームの作成かな。


とりあえずはこんなところかな。
明日はミニゲームの作成ー
ではまたー
スポンサーサイト

コメント

非公開コメント