【24sec】残りの保存バグ修正できました!

残っていたデータ保存バグ修正できたよ、記録メモ。

 

【問題の症状】

●一部の方のプレイヤー名が「Player」になっていた。「Player」はこのゲームにおけるプレイヤー名データの初期値のもの。しかし、仕組み上は、Kongregateにアクセスした時点でKongregateのサインイン名称かGuest扱いにしているため、初期値が露呈する「はずがない」というもの。

●ゲームではプレイヤー名とほかのデータを紐付けて保存しているため、何かの理由で名前が「Player」になってしまった方は、「Player」になったときにデータが飛んだと思われる。

●自分が再現を試みる限り、タイトル画面でロード中に閉じると、高確率で名前が「Player」になり、データが初期化される(紐付けを失う)ことを確認した。

 

【原因発覚と解決】

●ロード途中での中途半端な保存を避けるため、タイトル画面を押してキャンペーンに移行するまで「保存」動作はしていない設定のつもりだった。しかし、ゲーム各所での急なブラウザ閉じに対応するための「OnApplicationQuit」で保存をかけていたため、ロード中にブラウザを閉じると、初期値などが混ざった状態で保存される危険があるとわかった。

「OnApplicationQuit」タイミングの保存に、「タイトル画面ではない」という条件を加え、改善。少なくとも自分でわかっていた状況では「Player」発生は再現できなくなった。

 

ということで、この件は、一定の改善がされたと思う。公開から3週間、ようやく保存機能周辺はまともになってきたか。いやー本当にすみません。

 

 

 

 

 

--- 記事はこのゲームについて書いています

▼初の自作ゲーム24sec(Kongregate.com に飛びます)

Play 24sec Evolution, a free online game on Kongregate

▼関連:

ウィキ(プレイヤーさん制作)

24sec Evolution Wiki*

ウィキ(作者自前)

24sec Wiki