2019年8月28日水曜日

Ver0.8.7のリリース&状況報告

栄冠にゃいん2019のVer0.8.7をリリースしました。


ロードが遅い問題を一部修正しました。変更内容は以下です。
・オーダー設定画面の初回表示を高速化(古い機種にて6秒→0.3秒に改善を確認)。
・オーダー設定画面で、タッチしながら指を動かして選択変更できるよう改善。
・試合開始の初回表示を高速化(古い機種にて22秒→14秒に改善を確認)。
・[30球限定]の投手の交代時にエラーが発生する場合がある不具合を修正。
https://play.google.com/store/apps/details?id=com.companyname.Nyain2019

今回、ロードが遅い問題全般に対しての解消策が分かったため、その他の遅い機能も高速化可能だと思います。まだまだ不具合が多いので、今後も不具合修正、操作性改善、ロード時間の短縮を優先して対応します。

--------------------------------------------
報告いただいている主な不具合
--------------------------------------------
ご報告ありがとうございます。随時修正していきます。
・練習設定で守備位置変更をしても変更されない場合がある
・試合中の投球アニメーションにて、ボールがアニメーションしなくなる場合がある
・練習画面で実際と異なる自主練習の下線が表示される場合がある([特殊能力]画面に切り替えると直る)
・ライト線の当たりが、ファールグラウンドに落ちたのにフェアになる
・フェンス直撃の打球をスタンドの中まで取りに行く場合がある
・投手にサブポジつけた場合に、無印版のように色が2色に変化しない
・代打した後の守備時に、守備位置の[代]が残る場合がある 

--------------------------------------------
報告いただいている主な要望およびご助言
--------------------------------------------
・2年目で[スタメン×]のエピソード選手が来てつらい
・守備重視の育成方針で、智力上がらなくても良いので走力効率低下を無くして欲しい(外野の守備は走力が重要なので)
・2年目のエピソード選手を野手でなく、投手にして欲しい(序盤は投手不足で難易度が高いため)
・序盤は、努力型の選手が多いと難易度が上がりすぎるため、学校ランクが[弱小]か[そこそこ]では普通型が来る確率を上げてほしい
・セーフティバント対策は、ゲーム中の対策方法の説明を入れた方が良い
・捕手の智力がAになったら、バントシフトが必要かどうかを実際にシミュレーションして判定するようにして欲しい

--------------------------------------------
参考:ロード時間を短縮した方法
--------------------------------------------
栄冠にゃいん2019は、Xamarin.Formsという技術を用いて開発しています。
詳細はこちらのQiitaの記事を参照
そこには、色々なライブラリが存在します。オーダー設定画面での選手のリスト(複数の要素を縦または横に並べて表示する)なども、通常はリスト用のライブラリを利用して開発します(ライブラリを利用した方が、開発効率が高いため)。
しかし、そのライブラリを使って普通に開発すると処理時間が長くかかることが分かりました。そこで、自分でリストを高速に表示するための新しいライブラリを開発しました。
具体的には、Skiaという描画用のエンジンを用いて、必要な描画処理をすべて自分で計算して行い、タッチ処理もすべて自分で位置計算して処理しています。おそらくこれが一番高速だと思います。
その結果、オーダー設定画面の初回表示は、(古い機種で)6秒くらいかかっていたのが0.3秒に短縮できました。
また、タッチ処理も独自に作成したことによって、タッチしながら指を動かしたときに、選択を変更するなどの処理もできるようになりました(今回、オーダー設定画面でも、タッチ中に指を動かすと選択選手を切り替えられます)。これにより、Windows版でマウスホバーした時の挙動を再現できるようになるため、この仕組を活用すれば、他の機能も操作性を改善できると思います。