某作品の某バグに遭遇、そのついでにウディタのオーバーフロー対策について調べてみた。
ウディタの変数で取り扱うことができる範囲は±2147483648(符号付32bit変数の限界)まで。
答えがこの範囲を超える計算結果が出たとき、
「コモンイベントの変数で」「実数計算・データを呼ばないにチェックを入れていないとき」オーバーフローする。
この場合、計算結果はマイナスになったり滅茶苦茶な数字になります。
ただし、上記鍵括弧の条件、つまりイベントの変数や実数計算・データを呼ばないにチェックを入れておくと
結果は±20億に収まります。
また、当然ですが「結果を±999999に収める」にチェックを入れると±999999に収まる、はず。
……このようなことをtwitterにて呟いたところ。
要するに計算結果が308桁を越えない限り大丈夫なんじゃないのか、とのこと。
前述の通り、変数の有効範囲は20億が限界なんだし、308桁なんて結果になることはまずないと思いますが。
というかウディタじゃなくても308桁の計算なんてしないか。
……誰か、308桁の数が出るゲームを作ってみないか?