ページ 11

Chrome ver.60で戦闘中にフリーズ

Posted: 2017年7月30日(日) 23:46
by メガーヌ
2017/07/25にリリースされたChrome 60で作成したゲームを実行すると、戦闘中に以下のエラーが出るようになってしまいました。

TypeError
cannot read property 'update' of undefined

コアスクリプトはアツマール版1.2cを使用しています。
発生条件を調査してみると、敵が4体以上出てきた時に2ターン目に入るとエラーが出てしまうもようです。
chromeのデバッグ機能で見てみるとSpriteのupdateになにか問題があるようです。
戦闘はサイドビューバトルでやっています。

アツマールコアスクリプト開発者に問い合わせるのが良いのかもしれませんが、日本語で不具合報告ができるのかよくわかりません。
同様の事象が起きていて回避された方がいらっしゃいましたら教えていただけると幸いです。

Re: Chrome ver.60で戦闘中にフリーズ

Posted: 2017年7月31日(月) 03:41
by トリアコンタン
こんばんは!
こちらで現象を確認し、エラーを回避する暫定対策プラグインを用意しました。

Chromeのバージョン60以降で、戦闘が強制終了する場合がある問題に暫定対処します。

根本原因は、forEachの繰り返し途中で、対象配列の要素が削除された場合に、
配列の範囲外(長さを上回るindex)の値(undefined)が渡されることがあるためです。
なぜ範囲外の値が渡されるのかは不明なので、こちらは暫定対策となります。

発生を確認したバージョン
60.0.3112.78

・ダウンロード
https://raw.githubusercontent.com/triac ... hrome60.js

・利用規約
当プラグインはMITライセンスのもとで公開されています。作者に無断で改変、再配布が可能で、利用形態(商用、18禁利用等)についても制限はありません。このプラグインはもうあなたのものです。

画像
画像
画像
画像
画像
画像

・これまでに制作したプラグイン一覧
https://docs.google.com/spreadsheets/d/ ... d=30581402