ヴァリアントレギオンで利用しているSlackBOTについて


こんにちは。エンジニアの山内です。

Aimingでは社内のチャットツールとして Slack を使用しており、ヴァリアントレギオン (以下ヴァリレギ) のチャンネルでも、いくつかのBOTが動作しています。

KPT入力を催促するBOT

ヴァリレギのチームでは、Trello に Keep, Problem, Try を思いついた時に入力しておき、スプリントのタイミングで入力された内容を見返してKPTを進行しています。
ついつい忘れがちなため、毎日特定の時間になると Trello へ KPT の入力を要求するBOTがいます。KPTをやかる(※)BOT と呼ばれています。

※やかる:方言。(強引な理由の)文句を言う。訳すなら「KPT入力(されてない事に)文句を言うBOT」。

レビューを催促するBOT

ヴァリレギのチームでは、レビュータイムを設けてレビューが溜まってしまう状況を低減しています。レビュータイムをBOTが通知します。

Pivotal確認を催促するBOT

ヴァリレギのチームでは、PivotalTrackerでストーリーの管理をしています。実装ができて Accept を行うのはプランナーチームになるため、完了しているストーリーが無いか確認を催促するBOTがいます。

bugbot

最近はTODOも通知するようになりました。

担当決めBOT

急ぎで見てほしいレビュー、調査依頼など、誰かに依頼したいけど誰に投げるか決めにくい。かといって、@誰か ではなかなか拾われない。ということで、担当をランダムに抽選するBOTがいます。

これは あなたのチームの「いい人」は機能していますか? というスライドで紹介されていた手法です。

エリス 担当 <人数>

と入力すると担当者をピックアップしてくれます(エリスはヴァリレギ内でプレイヤーに色々教えてくれるキャラクターです)

eris

なぜか作成者が抽選されにくい現象が発生しましたが、コードに不正はありませんでした。
コマンドが日本語で打ちにくいと言う意見があり、エリスの多言語化が要求されています。

これらのBOTのおかげでチーム内のコミュニケーションが円滑になっています。


ヴァリアントレギオンでUnity4からUnity5へバージョンアップした時に発生した問題


エンジニアの山内です。

絶賛サービス中のタイトル ヴァリアントレギオン のアプリ開発ではUnityを利用しており、開発開始時のUnityのバージョンは3.5で、現在は5.0.4と2回のメジャーバージョンアップを行っています。
Unity4 から Unity5 へバージョンアップした時に、こんな問題がありました、という紹介です。

特定の端末で文字が表示されない

特定GPUの端末で文字列が塗りつぶされて長方形になる問題が発生しました。文字の描画には unity-sysfont を使用していたのですが、5.x向けにはサポートされていないためと推測し、テクスチャ生成部分とレンダリング部分を改修して対処しました。

ビルド時間が2倍に

IL2CPPの影響でアプリのビルド時間が2倍になりました。対応として開発時はIL2CPPを切る方法が検討されましたが、その違いで不具合が発見されない方が怖いのでそのままにしています。

バイナリが制限サイズを越えた

IL2CPPの影響でアプリのサイズが大きくなり、ipaの制限である100MBを超えてしまいました。対応としてはチュートリアルで使用するデータをアプリから削って、追加ダウンロードするようにしました。
Androidでも制限を越えてしまいましたが、これはコンテンツ追加の影響だったので組み込みのテクスチャを減色・整頓しました。

Animation解放時にアプリがクラッシュする

ヴァリアントレギオンではUnity3の頃から開発していた名残でレガシーなAnimationを利用しています。Animationがついたモデルを解放するとき、アニメーションクリップをRemoveしなければクラッシュするというバグを踏みました。この問題は解放処理の前に停止処理を必ず行うようにして回避しました(Unityの不具合で現在もfixされていないようです)。
レガシーアニメーション関連の不具合は他にも余波があり、開発ツール側での問題解決ができておらず、一部の作業はUnity4で行うという事態になっています。さらにUnity5.1以上にバージョンアップした際にもAnimationで問題が出るため、現在5.0.4で足踏み中です。
現在これらを解消するべくAnimationからAnimatorに一括変換中です。

ほかにも

  • エネミーがバックステップする時にノーモーションでスッと下がる
  • メインメニュー上のアイコンの並びがガタガタになる
  • ガチャ演出で宝箱を空ける瞬間に宝箱が吹っ飛ぶ

など、見た目に楽しい(楽しくない)問題がありました。